Obtient la couleur d'un pinceau de couleur unie
#include <GDIPlus.au3>
_GDIPlus_BrushGetSolidColor ( $hBrush )
$hBrush | Handle de l'objet Brush |
Succès: | Retourne la couleur du pinceau. |
Échec: | Retourne -1 et définit @error <> 0, @extended contient le code erreur GPSTATUS ($GPID_ERR*). |
Cherchez GdipGetSolidFillColor dans la Library MSDN
#include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Example() Func Example() Local $hGUI, $idLabel1, $idLabel2, $hGraphic, $hBrush1, $iClr1, $iClr2 ; Créer une GUI $hGUI = GUICreate("GDI+", 345, 150) $idLabel1 = GUICtrlCreateLabel("", 2, 2, 150, 20) $idLabel2 = GUICtrlCreateLabel("", 202, 2, 150, 20) GUISetState(@SW_SHOW) Sleep(100) ; Démarre GDIPlus _GDIPlus_Startup() $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Crée un pinceau d'une seule couleur $hBrush1 = _GDIPlus_BrushCreateSolid() ; Obtient la couleurdu pinceau $iClr1 = _GDIPlus_BrushGetSolidColor($hBrush1) ; Dessine des graphiques avec la couleur du pinceau d'original _GDIPlus_GraphicsFillEllipse($hGraphic, 25, 25, 100, 100, $hBrush1) ; Définit un nouveau pinceau de couleur (0xFFFF0000 = rouge) _GDIPlus_BrushSetSolidColor($hBrush1, 0xFFFF0000) ; Obtient la nouvelle couleur du pinceau $iClr2 = _GDIPlus_BrushGetSolidColor($hBrush1) ; Dessine des graphiques avec la nouvelle couleur du pinceau _GDIPlus_GraphicsFillRect($hGraphic, 220, 25, 100, 100, $hBrush1) ; Ecrit avec la couleur du pinceau d'origine dans Label1 GUICtrlSetData($idLabel1, "Brush orignal color: " & Hex($iClr1)) ; Ecrit avec la nouvelle couleur du pinceau dans label2 GUICtrlSetData($idLabel2, "Brush new color: " & Hex($iClr2)) ; Boucle jusqu'à ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ; Nettoie les ressources _GDIPlus_BrushDispose($hBrush1) _GDIPlus_GraphicsDispose($hGraphic) _GDIPlus_Shutdown() EndFunc ;==>Example