メニューとメニュー項目のスペース配分を指定して、表示順序(昇順)を制御できます。 各セクションはセパレータで囲まれ、同じく昇順でソートされます。
oracle.ide.MenuConstants
クラスとoracle.jdeveloper.JDeveloperMenuConstants
クラスでは、各メニューおよびメニュー項目に対してweight定数が定義されます。 メイン・メニューとポップアップ・メニューの各セクションに対してもsection定数が定義されます。MenuConstants
はIdeのメニューを定義し、JDeveloperMenuConstants
はJDeveloperメニュー・コマンドを定義します。 ほとんどの場合は、メニュー項目の定数をJDeveloperMenuConstantsに追加する必要があります。
メニューとメニュー項目のスペース配分を作成するには、次のようにします。
oracle.jdeveloper.JDeveloperMenuConstants
を検討して割り当てる値を識別します。
高度: 複雑な開発プロジェクトや分散方式による開発プロジェクトへの対処が必要な場合は、独自のMenuConstants
クラスを作成できます。
メニューとメニュー項目のスペース配分を作成するには、次の例に従います。
public static final float WEIGHT_FILE_MENU = 1.0f;
public static final float WEIGHT_EDIT_MENU = 2.0f;
public static final float WEIGHT_VIEW_MENU = 3.0f;
public static final float SECTION_EDIT_UNDO = 0.010f;
public static final float SECTION_EDIT_CUT_COPY_PASTE = 0.020f;
public static final float SECTION_EDIT_SELECT_ALL = 0.030f;
public static final float SECTION_EDIT_ADDINS = 0.040f;
public static final float SECTION_EDIT_PROPERTIES = 0.050f;
public static final float WEIGHT_EDIT_UNDO = 0.010f;
public static final float WEIGHT_EDIT_REDO = 0.020f;
public static final float WEIGHT_EDIT_CUT = 0.030f;
public static final float WEIGHT_EDIT_COPY = 0.040f;
public static final float WEIGHT_EDIT_PASTE = 0.050f;
public static final float WEIGHT_EDIT_DELETE = 0.060f;
public static final float WEIGHT_EDIT_SELECT_ALL = 0.070f;
public static final float WEIGHT_EDIT_PROPERTIES = 0.080f;
// Create the edit menu in the main menubar
private final Menubar menuMgr = Ide.getMenubar();
JMenu editMenu = menuMgr.createMenu( "Edit", new Integer('E'),
MenuConstants.WEIGHT_EDIT_MENU, MenuConstants.SECTION_EDIT_ADDINS );
// Create commands and populate the menu
JMenuItem undoItem = menuMgr.createMenuItem( UndoAction, MenuConstants.WEIGHT_EDIT_UNDO );
menuMgr.add( undoItem, editMenu, MenuConstants.SECTION_EDIT_UNDO );
JMenuItem redoItem = menuMgr.createMenuItem( RedoAction, MenuConstants.WEIGHT_EDIT_REDO );
menuMgr.add( redoItem, editMenu, MenuConstants.SECTION_EDIT_UNDO );
JMenuItem cutItem = menuMgr.createMenuItem( CutAction, MenuConstants.WEIGHT_EDIT_CUT );
menuMgr.add( cutItem, editMenu, MenuConstants.SECTION_EDIT_CUT_COPY_PASTE );
JMenuItem copyItem = menuMgr.createMenuItem( CopyAction, MenuConstants.WEIGHT_EDIT_COPY );
menuMgr.add( copyItem, editMenu, MenuConstants.SECTION_EDIT_CUT_COPY_PASTE );
JMenuItem pasteItem = menuMgr.createMenuItem( PasteAction, MenuConstants.WEIGHT_EDIT_PASTE );
menuMgr.add( pasteItem, editMenu, MenuConstants.SECTION_EDIT_CUT_COPY_PASTE );
JMenuItem delItem = menuMgr.createMenuItem( DeleteAction, MenuConstants.WEIGHT_EDIT_DELETE );
menuMgr.add( delItem, editMenu, MenuConstants.SECTION_EDIT_CUT_COPY_PASTE );
JMenuItem selectItem = menuMgr.createMenuItem( SelectAllAction,
MenuConstants.WEIGHT_EDIT_SELECT_ALL );
menuMgr.add( selectItem, editMenu, MenuConstants.SECTION_EDIT_SELECT_ALL );
JMenuItem propsItem = menuMgr.createMenuItem( PropertiesAction,
MenuConstants.WEIGHT_EDIT_PROPERTIES );
menuMgr.add( propsItem, editMenu, MenuConstants.SECTION_EDIT_PROPERTIES );
popup.add( EditorConstants.CUT_ITEM, MenuConstants.SECTION_EDIT_CTXT_MENU );
popup.add( EditorConstants.COPY_ITEM, MenuConstants.SECTION_EDIT_CTXT_MENU );
popup.add( EditorConstants.PASTE_ITEM, MenuConstants.SECTION_EDIT_CTXT_MENU );
popup.add( EditorConstants.ALL_ITEM, MenuConstants.SECTION_EDIT_CTXT_MENU);
// Get the menu manager
private final Menubar menuMgr = Ide.getMenubar();
// Create a menu item with no weight.
// Unweighted items are added to the end of the menu section to which they are added
JMenuItem myItem = menuMgr.createMenuItem(myAction);
// "MenuConstants.SECTION_FILE_OPEN_NEW" is the section that contains New, Open, Reopen, Add to Project.
menuMgr.add(myCommand, FileMenu, MenuConstants.SECTION_FILE_OPEN_NEW);
または、次のメソッドを使用できます。
// Create the menu item with a weight just larger than the "File > New" menu item
// and if it's in the same section, it will appear just after it.
JMenuItem myItem = menuMgr.createMenuItem(myAction,(MenuConstants.WEIGHT_FILE_NEW + 0.01f));
デフォルトのセクションにコマンドを追加するには、セクションを指定せずに追加します。
private final Menubar menuMgr = Ide.getMenubar();
JMenuItem myItem = menuMgr.createMenuItem(myAction);
menuMgr.add(myItem, FileMenu);
新規セクションにコマンドを追加するには、次のようにします。
private final Menubar menuMgr = Ide.getMenubar();
// Create actions
float weight = 10.0f;
JMenuItem myItem = menuMgr.createMenuItem(myAction, weight ;
weight = 20.0f;
JMenuItem myItem2 = menuMgr.createMenuItem(myAction2, weight);
// Create a new section and add it just after the section containing New, Open, etc.
float mySection = (MenuConstants.SECTION_FILE_NEW_OPEN + 0.01f);
// Add items to the File menu
menuMgr.add(myItem, FileMenu, mySection); > menuMgr.add(myItem2, FileMenu, mySection);
IDEクラスについて
ドック・ステーションについて
ビューについて
oracle.ide.Ide
oracle.ide.MainWindow
Copyright © 1997, 2004, Oracle. All rights reserved.