Remplit avec un d�grad� radial
#include <WinAPIGdi.au3>
_WinAPI_RadialGradientFill ( $hDC, $iX, $iY, $iRadius, $iRGB1, $iRGB2 [, $fAngleStart = 0 [, $fAngleEnd = 360 [, $fStep = 5]]] )
$hDC | Handle du contexte de p�riph�rique. |
$iX | La coordonn�e x du point central, en unit�s logiques. |
$iY | La coordonn�e y du point central, en unit�s logiques. |
$iRadius | Le rayon du cercle de remplissage du d�grad�. |
$iRGB1 | La couleur au point central. |
$iRGB2 | La couleur sur le bord du cercle. |
$fAngleStart | [optionnel] L'angle � partir duquel il faut commencer le remplissage, en degr�s. Par d�faut, 0�. |
$fAngleEnd | [optionnel] L'angle auquel il faut terminer le remplissage, en degr�s. Par d�faut, 360�. |
$fStep | [optionnel] Le pas de remplissage du d�grad�, en degr�s. Pour la plus grande valeur de ce param�tre, le d�grad� sera le meilleur, mais le traitement prendra plus de temps, et vice versa. Par d�faut, 5. |
Succ�s: | Retourne 1. |
�chec: | Retourne 0. |
Cette fonction ne remplit pas en d�grad� avec la transparence, et n'utilise pas l'anticr�nelage.
#include <GUIConstantsEx.au3> #include <SendMessage.au3> #include <StaticConstants.au3> #include <WinAPIGdi.au3> #include <WinAPIGdiDC.au3> #include <WinAPIHObj.au3> ; Cr�e une GUI Local $hForm = GUICreate('Test '& StringReplace(@ScriptName, '.au3', '()'), 400, 400) Local $idPic = GUICtrlCreatePic('', 0, 0, 400, 400) Local $hPic = GUICtrlGetHandle($idPic) ; Cr�e un d�grad� Local $hDC = _WinAPI_GetDC($hPic) Local $hDestDC = _WinAPI_CreateCompatibleDC($hDC) Local $hBitmap = _WinAPI_CreateCompatibleBitmapEx($hDC, 400, 400, 0xFFFFFF) Local $hDestSv = _WinAPI_SelectObject($hDestDC, $hBitmap) For $i = 0 To 315 Step 45 _WinAPI_RadialGradientFill($hDestDC, 200, 200, 180, Random(0, 0xFFFFFF, 1), 0xFFFFFF, $i, $i + 45) Next _WinAPI_ReleaseDC($hPic, $hDC) _WinAPI_SelectObject($hDestDC, $hDestSv) _WinAPI_DeleteDC($hDestDC) ; D�finit le d�grad� dans le contr�le Picture _SendMessage($hPic, $STM_SETIMAGE, 0, $hBitmap) Local $hObj = _SendMessage($hPic, $STM_GETIMAGE) If $hObj <> $hBitmap Then _WinAPI_DeleteObject($hBitmap) EndIf GUISetState(@SW_SHOW) Do Until GUIGetMsg() = $GUI_EVENT_CLOSE