Function Reference

_GUICtrlMenu_SetItemInfo

メニューアイテムの情報を変更します。

#Include <GuiMenu.au3>
_GUICtrlMenu_SetItemInfo($hMenu, $iItem, ByRef $tInfo[, $fByPos = True])

 

パラメータ

$hMenu メニューハンドル
$iItem メニューアイテムの位置または識別子
$tInfo $tagMENUITEMINFO構造体
$fByPos [オプション]メニュー識別子フラグ:
 True - $iItemはゼロ始まりのアイテム位置です
False - $iItemはメニューアイテムの識別子です

 

返し値

成功: True
失敗: False

 

注意

なし。

 

関連

_GUICtrlMenu_GetItemInfo, $tagMENUITEMINFO

 

こちらも参照

MSDNライブラリでSetMenuItemInfoを検索して下さい。

 


#include <GuiMenu.au3>

Opt('MustDeclareVars', 1)

_Main()

Func _Main()
    Local $hWnd, $hMain, $hFile, $tInfo

    ; メモ帳を開く
    Run("Notepad.exe")
    WinWaitActive("[CLASS:Notepad]")
    $hWnd = WinGetHandle("[CLASS:Notepad]")
    $hMain = _GUICtrlMenu_GetMenu($hWnd)
    $hFile = _GUICtrlMenu_GetItemSubMenu($hMain, 0)

    ; "開く"コマンドのIDを取得/設定
    $tInfo = _GUICtrlMenu_GetItemInfo($hFile, 1)
    Writeln("Open command ID: " & DllStructGetData($tInfo, "ID"))
    DllStructSetData($tInfo, "ID", 0)
    _GUICtrlMenu_SetItemInfo($hFile, 1, $tInfo)
    $tInfo = _GUICtrlMenu_GetItemInfo($hFile, 1)
    Writeln("Open command ID: " & DllStructGetData($tInfo, "ID"))

EndFunc   ;==>_Main

; メモ帳にテキストを1行書き込む
Func Writeln($sText)
    ControlSend("[CLASS:Notepad]", "", "Edit1", $sText & @CR)
EndFunc   ;==>Writeln