Page 2 sur 2
Re: [..] Comment savoir si une checkbox est cochée ou non ?
Posté : ven. 18 mars 2011 18:43
par ani
wouep on peux faut jouer avec les styles de la fenêtre
pas sure que çà soit celui-là mais teste celui-ci $WS_POPUPWINDOW
Re: [..] Comment savoir si une checkbox est cochée ou non ?
Posté : ven. 18 mars 2011 19:08
par Xtend
Merci pour ta réponse,
c'est effectivement quelque chose dans ce style que je voudrais.
Il y a-t-il possibilité de faire ce gui en "transparent" afin de voir juste mon image (background) ?
Re: [..] Comment savoir si une checkbox est cochée ou non ?
Posté : ven. 18 mars 2011 20:42
par ani
pour rendre une gui transparente y a l'extention du style
$WS_EX_TRANSPARENT (0x00000020)
Exemple
Code : Tout sélectionner
Guicreate("Gui",250,250,-1,-1,-1,0x00000020)
;...
Guisetstate()
do
until GUIGetMsg() = $GUI_EVENT_CLOSE
Guidelete()
Sinon regarde dans la documentation avec la fonction GUICtrlCreatePic.
Re: [..] Comment savoir si une checkbox est cochée ou non ?
Posté : ven. 18 mars 2011 23:45
par Xtend
Ton exemple ne marche pas mais bon, j'ai réussi en me débrouillant sans transparence
Sinon, je profite de ce topic afin de poser une autre question (et oui, encore ^^) :
Avec Internet Explorer 9, lorsque je veux cliquer sur la case "submit", il veut pas alors que ça marchait très bien sous IE8 :
Code : Tout sélectionner
$Submit_by_Name = _IEGetObjByName($oIE, "submit")
_IEAction($Submit_by_Name, "click")
Il y a-t-il une autre méthode pour IE9 ?
Re: [R] Comment savoir si une checkbox est cochée ou non ?
Posté : sam. 19 mars 2011 12:22
par ani
le çà ne marche pas hm il a du te retourner une erreur du genre la variable $gui_event_close n'est pas déclaré, a par çà je vois rien, même si il fonctionne tu ne verrai pas l'interface vu quel est transparente
Voici un exemple qui sort de l'aide.
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
#Include <WinAPI.au3>
$hGUI=Guicreate("Gui",250,250,-1,-1,-1,0x00000020)
_GDIPlus_StartUp()
$hImage = _GDIPlus_ImageLoadFromFile(StringReplace(@AutoItExe,"autoit3.exe","Examples\GUI\Torus.png"))
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
GUIRegisterMsg($WM_PAINT, "MY_WM_PAINT")
Guisetstate()
do
until GUIGetMsg() = $GUI_EVENT_CLOSE
Guidelete()
; Clean up resources
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_ShutDown()
Func MY_WM_PAINT($hWnd, $Msg, $wParam, $lParam)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_UPDATENOW)
_GDIPlus_GraphicsDrawImage($hGraphic, $hImage, 0, 0)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_VALIDATE)
Return $GUI_RUNDEFMSG
EndFunc
et je ne dispose pas d'ie9, je suis encore avec la 6 ^^'
Re: [R] Comment savoir si une checkbox est cochée ou non ?
Posté : sam. 19 mars 2011 13:44
par Xtend
en utilisant ton script, la gui n'est pas transparente, c'est normal ?
Re: [R] Comment savoir si une checkbox est cochée ou non ?
Posté : sam. 19 mars 2011 22:14
par ani
non c'est pas normal, quel version dispose tu ?
regarde dans l'aide d'autoit sur la fonction GuiCtrlCreatePic le dernier exemple (n°3 de zedna)
ajoute dans le paramètre de guicreate la transparence, et dit moi si çà fonctionne

Re: [R] Comment savoir si une checkbox est cochée ou non ?
Posté : sam. 19 mars 2011 22:58
par Xtend
Ben même avec l'exemple que tu me propose d'essayer, ça marche pas.
J'utilise pourtant la dernière version d'AutoIt (j'utilise AutoIt depuis 1 mois donc ça peut pas être une version antérieure).
Voici le code que j'ai utilisé :
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
#Include <WinAPI.au3>
Global $hGUI, $hImage, $hGraphic, $hImage1
; Create GUI
$hGUI = GUICreate("Gui",250,250,-1,-1,-1,0x00000020)
; Load PNG image
_GDIPlus_StartUp()
$hImage = _GDIPlus_ImageLoadFromFile("C:\images.png")
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
GUIRegisterMsg($WM_PAINT, "MY_WM_PAINT")
GUISetState()
; Loop until user exits
do
until GUIGetMsg() = $GUI_EVENT_CLOSE
; Clean up resources
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_ShutDown()
; Draw PNG image
Func MY_WM_PAINT($hWnd, $Msg, $wParam, $lParam)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_UPDATENOW)
_GDIPlus_GraphicsDrawImage($hGraphic, $hImage, 0, 0)
_WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_VALIDATE)
Return $GUI_RUNDEFMSG
EndFunc
Pour le fichier PNG, j'ai essayé avec celui d'origine (qui existe bien) et avec un autre à la racine du disque dur.