Functions > GUI > GUICtrlCreate >


GUICtrlCreatePic

Cr�e un contr�le Picture pour une GUI.

GUICtrlCreatePic ( filename, left, top [, width [, height [, style = -1 [, exStyle = -1]]]] )

Param�tres

filename Nom du fichier image � charger: types pris en charge BMP, JPG, GIF (mais sans animation).
left Coordonn�e X du coin sup�rieur gauche du contr�le. Si vous utilisez -1, X sera calcul�e en accord avec GUICoordMode.
top Coordonn�e Y du coin sup�rieur gauche du contr�le. Si vous utilisez -1, Y sera calcul�e en accord avec GUICoordMode.
width [optionnel] Largeur du contr�le (par d�faut, la largeur utilis�e pr�c�demment).
height [optionnel] Hauteur du contr�le (par d�faut, la hauteur utilis�e pr�c�demment).
style [optionnel] D�finit le style du contr�le. Consultez l'Annexe des styles d'un contr�le GUI.
    Par d�faut (-1) : $SS_NOTIFY
    Style forc� : $SS_BITMAP
exStyle [optionnel] D�finit le style �tendu du contr�le. Consultez la Table des styles �tendus.

Valeur de retour

Succ�s: Retourne l'ID du nouveau contr�le.
�chec: Retourne 0 si le contr�le ne peut pas �tre cr��.

Remarques

Pour d�finir ou modifier des informations dans le contr�le, consultez les fonctions GUICtrlUpdate...().

Pour mettre � jour l'image lorsque le contr�le est affich�e il suffit d'utiliser GUICtrlSetImage().

Pour d�finir le contr�le Picture � la m�me taille que le contenu du fichier, d�finissez width et height � 0.

Pour avoir une image transparente, cr�ez la GUI avec le style �tendu WS_EX_LAYERED. Le pixel sup�rieur gauche est utilis� en tant que couleur de transparence. Si plusieurs images sont cr��es la derni�re image d�finit la couleur de transparence. Consultez l'exemple 2.

Pour combiner des styles avec le style par d�faut, utilisez BitOR($GUI_SS_DEFAULT_PIC, newstyle, ...).
Pour utiliser les valeurs indiqu�es ci-dessus, vous devez utiliser #include <StaticConstants.au3> dans votre script.

Le redimensionnement par d�faut est $GUI_DOCKSIZE.

Si une image est d�finie comme image d'arri�re-plan, les autres contr�les recouvreront cette image, aussi il est important de d�sactiver le contr�le Picture: GUICtrlSetState(-1, $GUI_DISABLE).

Le style �tendu $GUI_WS_EX_PARENTDRAG peut �tre utilis� pour permettre le glissement de la fen�tre parent pour les fen�tres qui n'ont pas de barre de titre (pas de style $WS_CAPTION dans GUICreate()).

L'arri�re-plan est toujours d�fini transparent. GUICtrlSetBkColor() n'a pas d'effet sur le contr�le Picture.

En relation

GUICoordMode (Option), GUICtrlSetImage, GUICtrlUpdate..., GUIGetMsg

Exemples

Exemple 1

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Example()

Func Example()
    ; Cr�e une GUI affich�e au centre de l'�cran
    GUICreate("My GUI picture", 350, 300, -1, -1, $WS_SIZEBOX + $WS_SYSMENU) 

    GUISetBkColor(0xE0FFFF)
    Local $idPic = GUICtrlCreatePic("..\GUI\mslogo.jpg", 50, 50, 200, 50)

    GUISetState(@SW_SHOW)

    ; Boucle jusqu'� ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ; Redimensionne le contr�le
    GUICtrlSetPos($idPic, 50, 50, 200, 100)

    ; Boucle jusqu'� ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    GUIDelete()
EndFunc   ;==>Example


Exemple 2

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $g_hGui, $g_aGuiPos, $g_hPic, $g_aPicPos

Example()

Func Example()
    $g_hGui = GUICreate("test transparentpic", 200, 100)
    $g_hPic = GUICreate("", 68, 71, 10, 20, $WS_POPUp, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $g_hGui)
    GUICtrlCreatePic("..\GUI\merlin.gif", 0, 0, 0, 0)

    GUISetState(@SW_SHOW, $g_hPic)
    GUISetState(@SW_SHOW, $g_hGui)

    HotKeySet("{ESC}", "Main")
    HotKeySet("{Left}", "Left")
    HotKeySet("{Right}", "Right")
    HotKeySet("{Down}", "Down")
    HotKeySet("{Up}", "Up")
    $g_aPicPos = WinGetPos($g_hPic)
    $g_aGuiPos = WinGetPos($g_hGui)

    ; Boucle jusqu'� ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    HotKeySet("{ESC}")
    HotKeySet("{Left}")
    HotKeySet("{Right}")
    HotKeySet("{Down}")
    HotKeySet("{Up}")
EndFunc   ;==>Example

Func Main()
    $g_aGuiPos = WinGetPos($g_hGui)
    WinMove($g_hGui, "", $g_aGuiPos[0] + 10, $g_aGuiPos[1] + 10)
EndFunc   ;==>Main

Func Left()
    $g_aPicPos = WinGetPos($g_hPic)
    WinMove($g_hPic, "", $g_aPicPos[0] - 10, $g_aPicPos[1])
EndFunc   ;==>Left

Func Right()
    $g_aPicPos = WinGetPos($g_hPic)
    WinMove($g_hPic, "", $g_aPicPos[0] + 10, $g_aPicPos[1])
EndFunc   ;==>Right

Func Down()
    $g_aPicPos = WinGetPos($g_hPic)
    WinMove($g_hPic, "", $g_aPicPos[0], $g_aPicPos[1] + 10)
EndFunc   ;==>Down

Func Up()
    $g_aPicPos = WinGetPos($g_hPic)
    WinMove($g_hPic, "", $g_aPicPos[0], $g_aPicPos[1] - 10)
EndFunc   ;==>Up