本ページには広告が含まれています。
- 構文(VBA)
- Declare Function EnableMenuItem Lib "user32" (ByVal hMenu As Long, ByVal wIDEnableItem As Long, ByVal wEnable As Long) As Long
- 構文(UWSC)
- DEF_DLL EnableMenuItem(HWND, UINT, UINT): DWORD: user32.dll
- 引数
- 戻り値
プログラム実行例
メモ帳の指定したメニュー項目を無効化する
[ファイル]のメモ帳の終了をグレー表示でクリックできないようにする。
DEF_DLL GetSubMenu(HWND, int): HWND: user32.dll
DEF_DLL EnableMenuItem(HWND, UINT, UINT): DWORD: user32.dll
CONST MF_BYPOSITION = $400
CONST MF_GRAYED = $1
DIM ID = EXEC("notepad")
DIM hwnd = GetSubMenu(GETCTLHND(ID, GET_MENU_HND), 0)
PRINT EnableMenuItem(hwnd, 9, MF_BYPOSITION + MF_GRAYED)他の項目は以下の表を参照。
値は、(GetSubMenu第ニ引数)と(EnableMenuItem第二引数)を表しています。
例えばフォントの場合、2-1なので以下のように指定します。
[syntaxHighlight]GetSubMenu(GETCTLHND(ID, GET_MENU_HND), 2) EnableMenuItem(hwnd, 1, MF_BYPOSITION + MF_GRAYED)[/syntaxHighlight]| 値 | 項目 |
|---|---|
| 0-0 | 新規 |
| 0-1 | 新しいウィンドウ |
| 0-2 | 開く |
| 0-3 | 上書き保存 |
| 0-4 | 名前を付けて保存 |
| 0-6 | ページ設定 |
| 0-7 | 印刷 |
| 0-9 | メモ帳の終了 |
| 値 | 項目 |
|---|---|
| 1-11 | 置換 |
| 1-14 | すべて選択 |
| 1-15 | 日付と時刻 |
| 値 | 項目 |
|---|---|
| 2-0 | 右端で折り返す |
| 2-1 | フォント |
| 値 | 項目 |
|---|---|
| 3-0 | ズーム |
| 3-1 | ステータスバー |
| 値 | 項目 |
|---|---|
| 4-0 | ヘルプの表示 |
| 4-1 | フィードバックの送信 |
| 4-3 | バージョン情報 |
使用関数
