Function Reference

GUICtrlSetImage

コントロールに使用するビットマップまたはアイコンイメージを設定します。

GUICtrlSetImage ( controlID, filename [, iconname [, icontype]] )

 

パラメータ

controlID GUICtrlCreate...関数によって返されるコントロール識別子(コントロールID)。
filename コントロールに表示する画像を格納したファイルの名前。
iconname [オプション] ファイルが複数のアイコンを格納している場合、アイコンの名前。負の数の場合は序数名を使用できます。それ以外の場合は-1。
icontype [オプション] 指定したアイコンのサイズを選択できます: 0 = 小、1 = ノーマル(デフォルト)。
ツリービューアイテムの場合のアイコンサイズ: 2 = 選択、4は非選択アイテム。

 

返し値

成功 1を返します。
失敗 0を返します。

 

注意

ファイル内の有効なアイコン名の値を知るためにはリソースハッカーを使用してください。

ボタンコントロールを使用した場合、イメージはボタン上に表示されます。$BS_PUSHLIKEスタイルが使用されている場合はイメージをチェックボックスに設定することもできます。どちらの場合でも$BS_ICONスタイルまたは$BS_BITMAPスタイルが使用する画像のタイプとして選択されている必要があります。複数の解像度のアイコンファイル内では1番目のアイコンの解像度が使用されます。つまり128x128が1番目の解像度でコントロールが64x64の場合、イメージは切り捨てられます。

!!! このコマンドを最初にツリービューアイテムに使うと、他の全てのアイテムで自動的にそのアイコン/イメージがデフォルト値として使用されます。 !!!
ツリービュー、リストビューに対してGUICtrlSetImageを使用する場合、その全てのアイテムが設定したアイコン/イメージに変更されます。

正の数を渡した場合、アイコン名と等しい文字列を参照します。
負の数を渡した場合、1始まりの"インデックス"処理が起きます。Dllには負の数を使ってアイコンを取り出す仕様のものがあります。

 

関連

GUICtrlCreatePic, GUICtrlCreateIcon, GUICtrlCreateButton, GUICtrlCreateCheckbox

 


#include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>

Opt('MustDeclareVars', 1)

Example()

Func Example()
    Local $msg
   
    GUICreate("My GUI")  ; 表示時に中央に表示されるダイアログボックスを作成

    GUICtrlCreateButton("my picture button", 10, 20, 40, 40, $BS_ICON)
    GUICtrlSetImage(-1, "shell32.dll", 22)
   
    GUISetState()

    ; ダイアログが閉じられるまでGUIを実行
    While 1
        $msg = GUIGetMsg()
       
        If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    WEnd
EndFunc   ;==>Example