InsertMenuItemW

メニュー内の指定位置に新しいメニュー項目を挿入する。(Unicode)

InsertMenuItemW hmenu, item, fByPosition, lpmi

hmenu : [intptr] 型: HMENU 新しいメニュー項目を挿入するメニューへのハンドル。
item : [int] 型: UINT 新しい項目を挿入する位置の直後(基準)となるメニュー項目の識別子または位置。解釈は fByPosition の値による。
fByPosition : [int] 型: BOOL item の解釈を制御する。FALSE の場合、item はメニュー項目識別子として扱われる。そうでない場合はメニュー項目の位置として扱われる。詳しくは「プログラムからメニュー項目にアクセスする」を参照。
lpmi : [var] 型: LPCMENUITEMINFO 新しいメニュー項目の情報を含む MENUITEMINFO 構造体へのポインタ。

(プラグイン / モジュール : user32.dll)

解説

メニュー内の指定位置に新しいメニュー項目を挿入する。(Unicode)

[戻り値]
型: BOOL 関数が成功した場合、戻り値は非ゼロである。関数が失敗した場合、戻り値はゼロである。拡張エラー情報を取得するには
GetLastError 関数を使用する。

[備考]
メニューに変更があった場合、そのメニューが表示されているウィンドウにあるか否かにかかわらず、アプリケーションは DrawMenuBar
を呼び出さなければならない。ビットマップまたはオーナー描画のメニュー項目でキーボードアクセラレータを使うには、メニューの所有者が
WM_MENUCHAR メッセージを処理する必要がある。詳細は Owner-Drawn Menus と WM_MENUCHAR
メッセージを参照。

情報

プラグイン / モジュールuser32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の user32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_user32_gen2.hs