SET MENU BAR

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 11 (Modified)


SET MENU BAR (menuBar{; process}{; *})

引数説明
menuBar数値 | 文字列 | MenuRefメニューバー番号または名前 または
メニュー参照
process数値プロセス参照番号
*メニューバーの状態を保存

説明

SET MENU BAR はカレントプロセスのみのメニューバーをmenuBarで指定したメニューバーで置き換えます。menuBar 引数には、新しいメニューバーの番号または名前を渡します。またメニューID (MenuRef 型, 16文字の文字列) を渡すこともできます。参照を使用する場合、メニューをメニューバーとして、あるいはその逆として使用できます (メニューの管理の節を参照)。

Note: メニューバー名には31文字までを指定でき、ユニークでなければなりません。

オプションのprocess 引数を使用すると、指定したプロセスのメニューバーをmenuBarに変更します。

Note: menuBarMenuRefを渡した場合、process 引数は意味を持たず、無視されます。

オプションの引数 * を使用すると、メニューバーの状態を保存できます。この引数が省略された場合、SET MENU BARが実行されたとき、コマンドはメニューバーを再初期化します。

例えばSET MENU BAR(1)を実行したとします。次にDISABLE MENU ITEMコマンドを使い、いくつかのメニューを使用不可にします。

SET MENU BAR(1)を2度目に実行すると、その実行が同じプロセスからでも別のプロセスからでも、メニューはすべて、元の使用可の状態に戻ります。

SET MENU BAR(1;*)を実行すると、メニューバーは前と同じ状態を保っており、使用不可にしたメニューは使用不可のままです。

Note: menuBarMenuRefを渡した場合、* 引数は意味を持たず、無視されます。

ユーザがアプリケーションモードに移ると、最初のメニューバー(メニューバー#1)が表示されます。データベースを開く際にOn Startup データベースメソッドや個々のユーザ用のStartupメソッドで目的のメニューバーを指定して、メニューバーを変更することができます。

例題

1. 以下の例は、カレントメニューバーをメニューバー#3に変更し、メニューの状態を元に戻します:

   SET MENU BAR (3)

2. 以下の例題は、カレントメニューバーを“FormMenuBar1”という名前のメニューバーに変更し、メニューコマンドの状態を保存します。事前に選択不可に設定されたメニューコマンドは、選択不可のまま表示されます。

   SET MENU BAR ("FormMenuBar1";*)

3. 以下の例は、レコードの変更中フォームのメニューバーをメニューバー#3に変更します。レコードの変更が終了すると、メニューの状態を保存してメニューバーをメニューバー#2に戻します:

   SET MENU BAR(3)
   ALL RECORDS([Customers])
   MODIFY SELECTION([Customers])
   SET MENU BAR(2;*)

4. この包括的な例題では、以下のファイルメニューや編集メニューをプラグラムで作成します:

      `File メニューを作成するメソッド
   C_STRING(16;FileMenu)  ` FileMenu にはFIleメニュー参照が含まれます
   FileMenu:=Create menu 
   INSERT MENU ITEM(FileMenu;-1;"My Database "+Get indexed string(131;29))
   SET MENU ITEM MARK(FileMenu;1;Char(18))
   INSERT MENU ITEM(FileMenu;-1;"(-")
   INSERT MENU ITEM(FileMenu;-1;"Quit the Test Application mode/Y")
   SET MENU ITEM PROPERTY(FileMenu;3;Associated Standard Action; Return to Design mode) 
   INSERT MENU ITEM(FileMenu;-1;"(-")
   INSERT MENU ITEM(FileMenu;-1;Get indexed string(131;26))
   SET MENU ITEM PROPERTY(FileMenu;6;Associated Standard Action; Preferences Action)  `Preferences
   INSERT MENU ITEM(FileMenu;-1;"(-")
   INSERT MENU ITEM(FileMenu;-1;Get indexed string(131;30))
   SET MENU ITEM PROPERTY(FileMenu;7;Associated Standard Action; Quit Action)  `Quit
   SET MENU ITEM SHORTCUT(FileMenu;7;Character code("Q"))

      `Find and Replace メニューを作成するメソッド
   C_STRING(16;FindAndReplaceMenu)  `FindAndReplaceMenu にはFind and Replaceメニュー参照が含まれます
   FindAndReplaceMenu:=Create menu  
   APPEND MENU ITEM(FindAndReplaceMenu; "Find;Find Next;Find Previous;(-;Replace;Replace Next;Replace Previous") 
   SET MENU ITEM SHORTCUT(FindAndReplaceMenu;1;Character code("F"))
   SET MENU ITEM SHORTCUT(FindAndReplaceMenu;5;Character code("R"))
   SET MENU ITEM METHOD(FindAndReplaceMenu;1; "MyFindMethod")  

      `Edit メニューを作成するメソッド
   C_STRING(16; EditMenu)  `EditMenu には Edit メニュー参照が含まれます
   EditMenu:=Create menu  
   APPEND MENU ITEM(EditMenu;"Cut;Copy;Paste") 
   SET MENU ITEM SHORTCUT(EditMenu;1;Character code("X"))
   SET MENU ITEM PROPERTY(EditMenu;1;Associated Standard Action; Cut Action)
   SET MENU ITEM SHORTCUT(EditMenu;2;Character code("C"))
   SET MENU ITEM PROPERTY(EditMenu;2;Associated Standard Action;Copy Action)
   SET MENU ITEM SHORTCUT(EditMenu;3;Character code("V"))
   SET MENU ITEM PROPERTY(EditMenu;3;Associated Standard Action;Paste Action)
   INSERT MENU ITEM(EditMenu;-1;"(-")
   INSERT MENU ITEM(EditMenu;-1;"Find and Replace" ; FindAndReplaceMenu) ` item that will have submenu

   main_Bar:=Create menu ` 他のメニューを統合しメニューバーを作成する
   INSERT MENU ITEM(main_Bar;-1;Get indexed string(79;1);FileMenu)
   APPEND MENU ITEM(main_Bar; "Edit";EditMenu)

   SET MENU BAR(main_Bar)

参照

メニューの管理.


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次