Charge une icône et diminue une image grande plutôt que d'augmenter une image petite
#include <WinAPIIcons.au3>
_WinAPI_LoadIconWithScaleDown ( $hInstance, $sName, $iWidth, $iHeight )
$hInstance | Handle du module DLL ou exécutable (.exe) qui contient l'icône à charger. |
$sName | L'information sur l'icône à charger. Si $hInstance n'est pas 0, $sName spécifie la ressource icône par son nom ou son numéro d'ordre, sinon, $sName spécifie le nom d'un fichier icône autonome (.ico) ou l'identifiant d'une icône prédéfinie à charger. $IDI_APPLICATION $IDI_HAND $IDI_QUESTION $IDI_EXCLAMATION $IDI_ASTERISK $IDI_WINLOGO $IDI_SHIELD $IDI_ERROR $IDI_INFORMATION $IDI_WARNING |
$iWidth | La largeur souhaitée, en pixels, de l'icône. |
$iHeight | La hauteur désirée, en pixels, de l'icône. |
Succès: | Retourne le handle de l'icône. |
Échec: | Retourne 0 et définit @error <> 0, @extended contient le code d'erreur HRESULT. |
Lorsque vous avez fini d'utiliser l'icône, détruisez-la en utilisant la fonction _WinAPI_DestroyIcon().
Cette fonction nécessite Windows Vista ou une version ultérieure.
Consultez LoadIconWithScaleDown dans la librairie MSDN.
#include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <SendMessage.au3> #include <StaticConstants.au3> #include <WinAPIIcons.au3> #include <WinAPISys.au3> If Number(_WinAPI_GetVersion()) < 6.0 Then MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Erreur', 'Requiert Windows Vista ou une version ultérieure.') Exit EndIf GUICreate('Test '& StringReplace(@ScriptName, '.au3', '()'), 324, 324) GUICtrlCreateIcon('', 0, 64, 64, 196, 196) Global $h_Icon = GUICtrlGetHandle(-1) GUISetState(@SW_SHOW) Global $hIcon = _WinAPI_LoadIconWithScaleDown(0, @ScriptDir & '\Extras\Soccer.ico', 196, 196) Global $hPrev = _SendMessage($h_Icon, $STM_SETIMAGE, 1, $hIcon) If $hPrev Then _WinAPI_DestroyIcon($hPrev) EndIf Do Until GUIGetMsg() = $GUI_EVENT_CLOSE