Affiche une boîte de dialogue qui permet à l'utilisateur de choisir une icône
#include <WinAPIDlg.au3>
_WinAPI_PickIconDlg ( [$sIcon = '' [, $iIndex = 0 [, $hParent = 0]]] )
$sIcon | [optionnel] Le chemin d'accès complet du fichier qui contient l'icône initiale. |
$iIndex | [optionnel] L'index de l'icône initiale. Par défaut, 0. |
$hParent | [optionnel] Handle de la fenêtre parent. |
Succès: | Retourne le tableau contenant les informations suivantes: [0] - Le chemin du fichier qui contient l'icône sélectionnée. [1] - L'index de l'icône sélectionnée. |
Échec: | Définit @error <> 0. |
Cette fonction définit aussi @error à 1 si aucune icône n'a été sélectionnée.
Consultez PickIconDlg dans la librairie MSDN.
#include <GUIConstantsEx.au3> #include <WinAPIDlg.au3> Local $aLast[2] = [@SystemDir & '\shell32.dll', 3] Local $hForm = GUICreate('Test '& StringReplace(@ScriptName, '.au3', '()'), 160, 160) Local $idButton = GUICtrlCreateButton('Change Icon...', 25, 130, 110, 23) Local $idIcon = GUICtrlCreateIcon($aLast[0], -(1 + $aLast[1]), 64, 54, 32, 32) GUISetState(@SW_SHOW) Local $aData, $iMsg Do $iMsg = GUIGetMsg() If $iMsg = $idButton Then $aData = _WinAPI_PickIconDlg($aLast[0], $aLast[1], $hForm) If IsArray($aData) Then GUICtrlSetImage($idIcon, $aData[0], -(1 + $aData[1])) $aLast = $aData EndIf EndIf Until $iMsg = $GUI_EVENT_CLOSE