Un autre petit exemple, sur le transparence du fond.
Attention, cela ne fontionne que sous Vista (avec Aero).
La fenêtre (fond, menu, bordures) est complètement invisible ; seuls les contrôles (boutons, zone de saisie) sont visible.
Cela permet de faire un effet intéressant, si l'on ouvre la fenêtre sur le bureau.
Code : Tout sélectionner
#include <WindowsConstants.au3>
#include <GUIConstants.au3>
$w = 400
$h = 260
$vert = 300
$hor = 300
$hgui = GUICreate("GUIE", $w, $h, $hor, $vert, $WS_POPUP,$WS_EX_LAYERED)
;$hgui = GUICreate("GUIE", $w, $h, $hor, $vert, "", $WS_EX_LAYERED)
$hgr=GUICtrlCreatePic("", -5,-5, $w+10, $h+10)
GuiCtrlSetState($hgr,$GUI_DISABLE)
$hg2=GUICtrlCreatePic("trans.gif", -5,-5, $w+10, $h+10)
GuiCtrlSetState($hg2,$GUI_DISABLE)
$bt1 = GUICtrlCreateButton("Bouton_1", 20, 20, 80, 25)
$bt2 = GUICtrlCreateButton("Bouton_2", 140, 50, 80, 25)
$bt3 = GUICtrlCreateButton("Bouton_3", 260, 80, 80, 25)
$quit= GUICtrlCreateButton("Quit", 170, 190, 60, 25)
$sai1= GUICtrlCreateInput("Valeur_par_défaut", 20, 140, 330)
$lab1= GUICtrlCreateLabel("Zone de saisie : ", 20, 140-22)
GUISetState(@SW_SHOW, $hgui)
$msg = ""
while 1
sleep(12)
$msg = GUIGetMsg()
Select
Case $msg=$GUI_EVENT_CLOSE or $msg=$quit
ExitLoop
Case $msg=$bt1
MsgBox(0,"Bouton_1","cliqué")
Case $msg=$bt2
MsgBox(0,"Bouton_2","cliqué")
Case $msg=$bt3
MsgBox(0,"Bouton_3","cliqué")
EndSelect
WEnd
Exit