メニュー一括作成 (めにゅーいっかつさくせい)

分類分類/GUI関連(vnako)/VCL関連
種類命令
引数Sを|Sの
説明メニューを一括作成する。CSV形式で「親部品名,部品名,テキスト,ショートカット,オプション,イベント」で指定する。イベントには関数名か一行プログラムを指定。
識別id:2304

説明とサンプル (狩田英輝) [2005年03月05日]

母艦メインメニューを動的に作成する命令です。作成した各メニューは、グループメンバーの動的決定によってアクセスできます。例えば以下のサンプルでは、メニューの選択に応じてそれぞれチェックをつけ、不可視にし、無効にしています。
  

「なし,P1,テスト(&F)
    P1,P2,チェック(&O),Ctrl+O,なし,チェックつける処理
    P1,P3,不可視化(&S),Ctrl+S,なし,不可視化処理
  なし,P4,テストその2(&E)
    P4,P5,無効化,Ctrl+C,なし,無効化処理」の、
メニュー一括作成。

●チェックつける処理
  「チェックつけます」と言う
    P2→チェックはオン
●不可視化処理
  「不可視にします」と言う
    P3→可視はオフ
●無効化処理
  「無効化します」と言う
    P5→有効はオフ

サンプル (クジラ飛行机) [2005年04月28日]

メニューに区切り線をつけるには、ハイフンを記述します。

「なし,親メニュー,親
親メニュー,子1メニュー,子1
親メニュー,線1,-
親メニュー,子2メニュー,子2」のメニュー一括作成

説明 (クジラ飛行机) [2005年04月28日]

直前の親部品をハイフンで省略して書くことができます。
また、親部品の1文字目で#を書くとコメントの意味になります。

「#親部品名,部品名,テキスト,ショートカット,オプション,イベント
,親メニュー,親
-,子1メニュー,子1
-,-
-,子2メニュー,子2」のメニュー一括作成

深い構造のメニューを作る場合 (kujira) [2005年04月29日]

省略記号のハイフン(-)の数を増やすことにより深い構造のメニューを作成できます。

「
   ,file
  -,new
  -,open
 --,open_a
 --,open_b
 --,open_c
  -,save
 --,save_a
 --,save_b
 --,save_c
 」をメニュー一括作成

オプションの指定について

"オプション"に「チェック」と指定すれば、デフォルトでメニューのチェックをオンにできます。

「なし,親メニュー
-,デフォルトチェック,,,チェック,無効化処理」のメニュー一括作成。

補足 (fushigineko) [2010年02月11日]

 メニューで表示される “新規(N)”のような括弧の中の英文字は3番目の要素「テキスト」のところに“新規(&N)”のように、&を付けて記述します。また一文字でなくても良く、その場合には先頭の文字にだけアンダーラインが付きます。“新規(&New)”→メニューでは“新規(New)”←Nの下にだけアンダーラインとなります。
 ショートカットキーの記述は、書籍「日本語プログラミング言語なでしこ」(公式ガイドブック)の説明ページに以下の例が列挙されています。

文字列割り当てたキー
F1ファンクションキーの[F1]
Shif+F2[Shift]+ファンクションキーの[F2]
Ctrl+C[Ctrl]+[C]
Ctrl+Shift+V[Ctrl]+[Shift]+[V]
Ctrl+Shift+Alt+U[Ctrl]+[Shift]+[Alt]+[U]
Ctrl+Space[Ctrl]+[スペース]
Ctrl+UP[Ctrl]+[↑]
Shift+Right[Shift]+[→]
Alt+Down[Alt]+[↓]
Ctrl+Shift+Left[Ctrl]+[Shift]+[←]
Ins[Insert]
Del[Delete]
Home[Home]
PgUp[PageUp]
PgDn[PageDown]

 ショートカットキーは一括作成とは別に、(メニュー名)のショートカットは○○ という形の命令でも作成できます。