MenuItem¶
このクラスは複数のプラグインから拡張されています。
プラグイン拡張: menu¶
メンバー一覧¶
コンストラクタ¶
プロパティ¶
メソッド¶
MenuItem¶
コンストラクタ
引数
| 引数 | 型 | 既定値 | 説明 |
|---|---|---|---|
window |
Window |
|
このメニュー項目を作成するウィンドウを指定します。 |
caption |
string |
"" |
メニュー項目のキャプション (表示する文字列) を指定します。 MenuItem.caption プロパティで設定/取得できます。 |
解説
MenuItem オブジェクトの構築
MenuItem クラスのオブジェクトを構築します。 作成したメニュー項目を親メニュー項目に追加するには、親メニュー項目の MenuItem.add メソッドを使います。
HMENU¶
プロパティ \ アクセス: r
解説
HMENUメニュー項目ハンドル
Windows APIにおけるHMENU型のメニュー項目ハンドルを表します。 このプロパティはプラグインなどでメニュー項目に直接アクセスしたいときに用います。 TJS2からのアクセスは意味がありません。 ここで得られるのは整数ですが、プラグインなどでこの数値を使う場合は HMENU 型に キャストして使ってください。
caption¶
プロパティ \ アクセス: r/w
解説
キャプション
キャプション ( 表示する文字列 ) を表します。値を設定することもできます。 '-' ( ハイフン ) を指定すると区切り線を表示するようになります。
checked¶
プロパティ \ アクセス: r/w
解説
チェックマークを表示するかどうか
メニュー項目の横にチェックマークを表示するかどうかを表します。値を設定することもできます。 真を指定するとチェックマークが表示されます。 MenuItem.radio プロパティが真の場合は、チェックマークではなく、黒い丸が表示されます。 MenuItem.group にて同じグループ番号を持ち、かつ同じ親を持ち、さらに MenuItem.radio プロパティが真のメニュー項目は、 このプロパティを同時に二つ以上を 真にすることはできません。他のメニュー項目のこのプロパティが真になった場合、 他に真になっているメニュー項目があれば、自動的にそのメニュー項目のこのプロパティは偽に 設定されます。
children¶
プロパティ \ アクセス: r
解説
子メニュー項目
子メニュー項目がリストされた配列オブジェクトを表します。 ここで得られた配列に値を書き込んだり、項目の削除や追加などをしても実際のメニュー項目の状態には反映されません。読み取りのみが行えると考えてください。
enabled¶
プロパティ \ アクセス: r/w
解説
選択可能かどうか
メニュー項目を選択可能かどうかを表します。値を設定することもできます。 真の場合はメニュー項目が選択可能、偽の場合は選択不可能になります。
group¶
プロパティ \ アクセス: r/w
解説
グループ番号
グループ番号を表します。値を設定することもできます。 同じグループ番号を持ち、かつ同じ親を持ち、MenuItem.radio プロパティが 真のメニュー項目は、MenuItem.checked プロパティを同時に二つ以上を 真にすることはできません。
index¶
プロパティ \ アクセス: r/w
解説
順番
同じ親を持つメニュー項目間における順番を表す、0または正の整数です。 0が先頭を表します。 現在位置を取得したり、位置を変更するときに便利です。 値を設定すると、その位置にメニュー項目が移動します。
parent¶
プロパティ \ アクセス: r
解説
親メニュー項目
親メニュー項目を表します。
radio¶
プロパティ \ アクセス: r/w
解説
ラジオ項目かどうか
ラジオ項目かどうかを指定します。値を設定することもできます。 この項目が真の場合の動作については MenuItem.checked プロパティを 参照してください。
root¶
プロパティ \ アクセス: r
解説
ルートメニュー項目
ルート(大本)のメニュー項目(MenuItemクラスのインスタンス)を表します。
shortcut¶
プロパティ \ アクセス: r/w
解説
ショートカットキー
ショートカットキーを表します。値を設定することもできます。 ショートカットキーは文字列で指定します。「シフト系キー+対象キー名」の組み合わせで 指定します。大文字と小文字は区別されません。以下は有効なショートカットキーの例です。
"Shift+Esc" "Ctrl+S" "Shift+Alt+E" "Alt+Enter" "Ctrl+F1" "T" (シフト系キーの指定をしないこともできます)
無効なショートカットキーの組み合わせや、"" (空文字列) を指定するとショートカットキーは無効になります。 現バージョンでは、Tab や Shift+F1 など、システムや吉里吉里であらかじめ用途の決まっているキーの一部や、一部のキー (Shiftキーそのものなど)を指定しても反応しません。 ショートカットキーを指定すると、そのキーに対応する onKeyDown 等のイベントは発生しなくなり、ショートカットキーを 指定したメニュー項目にのみイベントが発生するようになります。
visible¶
プロパティ \ アクセス: r/w
解説
可視かどうか
メニュー項目が可視かどうかを表します。値を設定することもできます。 真ならば表示され、偽ならば非表示です。
window¶
プロパティ \ アクセス: r
解説
オーナーウィンドウ
このメニューアイテムを保持するオーナーウィンドウ(Windowクラスのオブジェクト)を表します。
add¶
メソッド
引数
| 引数 | 型 | 既定値 | 説明 |
|---|---|---|---|
item |
MenuItem |
|
追加する子メニュー項目を指定します。 子メニュー項目は、すでに子となっているメニュー項目の最後に追加されます。 |
解説
子メニュー項目の追加
子メニュー項目を追加します。 メニュー項目が他のメニュー項目の子になると、 親メニュー項目が無効化されるときに自動的に子メニュー項目も無効化されるようになります。 また、メニュー階層においても親子の関係を持つようになります。
insert¶
メソッド
引数
| 引数 | 型 | 既定値 | 説明 |
|---|---|---|---|
item |
MenuItem |
|
挿入する子メニュー項目を指定します。 |
index |
int |
|
挿入する位置を指定します。0 を指定すると先頭に挿入されます。 |
解説
子メニュー項目の挿入
子メニュー項目を指定位置に挿入します。
popup¶
メソッド
引数
| 引数 | 型 | 既定値 | 説明 |
|---|---|---|---|
flags |
int |
|
メニューの挙動を表すフラグです。以下の値のビット論理和を指定してください。 tpmLeftButton tpmRightButton tpmLeftAlign tpmCenterAlign tpmRightAlign tpmTopAlign tpmVCenterAlign tpmBottomAlign tpmHorizontal tpmVertical tpmNoNotify tpmReturnCmd tpmRecurse tpmHorPosAnimation tpmHorNegAnimation tpmVerPosAnimation tpmVerNegAnimation tpmNoAnimation これらのフラグの詳細についてはMSDNの該当ページを参照してください。 |
x |
int |
|
ウィンドウのクライアント座標上でのx位置を表します。 |
y |
int |
|
ウィンドウのクライアント座標上でのy位置を表します。 |
戻り値
flagsにtpmReturnCmdが指定されていた場合は、 選択されたメニュー項目のIDを整数で返します(ただし、現バージョンではこのIDを吉里吉里側から設定することができないため、flagsにtpmReturnCmdを指定することは意味がありません)。 何も選択されずにキャンセルされた場合は0を返します。
解説
メニュー項目のポップアップ表示
メニュー項目をポップアップ表示します。このメソッドは、メニューが閉じられるまで帰ってきません。 メニューが閉じられるまでの間に他の非同期イベントが発生する可能性があるので注意してください。 Window.menuそのものはポップアップできません。 非表示状態のメニュー項目はポップアップできません。 Window.menuの子でないメニューはポップアップできません。
remove¶
メソッド
引数
| 引数 | 型 | 既定値 | 説明 |
|---|---|---|---|
item |
MenuItem |
|
削除する子メニュー項目を指定します。 |
解説
子メニュー項目の削除
指定された子メニュー項目をリストから削除します。
onClick¶
メソッド
解説
メニュー項目が選択された
メニュー項目が選択された ( クリックされたり Enter キーが押された ) 時に発生します。
プラグイン拡張: windowEx¶
MenuItem拡張
メンバー一覧¶
プロパティ¶
メソッド¶
定数¶
- biSystem
- biRestore
- biMinimize
- biClose
- biCloseDisabled
- biMinimizeDisabled
- biPopupClose
- biPopupRestore
- biPopupMaximize
- biPopupMinimize
rightJustify¶
プロパティ \ アクセス: r/w
解説
メニューバーの右端分け表示
true ならその Item 以降は右端に寄せられる ※ Window.menu 直下で visible でない正しく動作しない
bmpChecked¶
プロパティ \ アクセス: r/w
解説
アイコンの表示
設定内容は MenuItem.bi* 定数を使用するか,レイヤオブジェクトを渡す ※ 値を設定する時点で Window.menu の子で visible でないと機能しないので注意 また,プルダウンメニューは,Window.registerExEvent()をして拡張イベントを登録しないと表示されないので注意 property bmpItem { getter; setter }; //< 文字列位置アイコン(チェック/未チェックアイコンの同時指定不可?) チェック時アイコン (0でデフォルト)
bmpUnchecked¶
プロパティ \ アクセス: r/w
解説
未チェック時アイコン (0でデフォルト)
popupEx¶
メソッド
引数
| 引数 | 既定値 | 説明 |
|---|---|---|
flags |
|
|
x |
cursorX |
|
y |
cursorY |
|
hwnd |
this.root.window |
オーナウィンドウ(省略時インスタンス所属ウィンドウ) |
rect |
|
オーバーラップ禁止範囲(%[ x, y, w, h ],省略時禁止範囲無し) |
menulist |
this.children |
メニュー一覧配列(MenuItemのインスタンスである必要はなく,辞書を並べても良い) |
戻り値
選択されたオブジェクト
解説
ポップアップ表示
MenuItem.popupのようにウィンドウメニュー所属である必要はなく,また一覧も辞書の配列を渡すなどができる この関数によるポップアップでのbmp*プロパティによるアイコン表示はされないので注意
biSystem¶
定数
解説
HBMMENU_SYSTEM
biRestore¶
定数
解説
HBMMENU_MBAR_RESTORE
biMinimize¶
定数
解説
HBMMENU_MBAR_MINIMIZE
biClose¶
定数
解説
HBMMENU_MBAR_CLOSE
biCloseDisabled¶
定数
解説
HBMMENU_MBAR_CLOSE_D
biMinimizeDisabled¶
定数
解説
HBMMENU_MBAR_MINIMIZE_D
biPopupClose¶
定数
解説
HBMMENU_POPUP_CLOSE
biPopupRestore¶
定数
解説
HBMMENU_POPUP_RESTORE
biPopupMaximize¶
定数
解説
HBMMENU_POPUP_MAXIMIZE
biPopupMinimize¶
定数
解説
HBMMENU_POPUP_MINIMIZE