类javax.swing.JMenuBar源码实例Demo

下面列出了怎么用javax.swing.JMenuBar的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: ib-controller   文件: SwingUtils.java
private static void appendMenuItem(Component menuItem, StringBuilder builder, String indent) {
    if (menuItem instanceof JMenuBar) {
        appendMenuSubElements((MenuElement)menuItem, builder, indent);
    } else if (menuItem instanceof JPopupMenu) {
        appendMenuSubElements((MenuElement)menuItem, builder, indent);
    } else if (menuItem instanceof JMenuItem) {
        builder.append(NEWLINE);
        builder.append(indent);
        builder.append(((JMenuItem)menuItem).getText());
        builder.append(((JMenuItem)menuItem).isEnabled() ? "" : "[Disabled]");
        appendMenuSubElements((JMenuItem)menuItem, builder, "|   " + indent);
    } else if (menuItem instanceof JSeparator) {
        builder.append(NEWLINE);
        builder.append(indent);
        builder.append("--------");
    }
}
 
源代码2 项目: jdk8u_jdk   文件: MenuItemIconTest.java
private static void createUI() throws Exception {
    SwingUtilities.invokeAndWait(() -> {
        frame = new JFrame();
        frame.setTitle("Test");
        JMenuBar menuBar = new JMenuBar();
        ImageIcon icon = createIcon();
        menuItem = new JMenuItem("Command", icon);
        menuItem.setHorizontalTextPosition(SwingConstants.LEFT);
        menuBar.add(menuItem);
        frame.setJMenuBar(menuBar);
        frame.setPreferredSize(new Dimension(500, 500));
        frame.pack();
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
    });
}
 
private static void createAndShowGUI(TestItem testItem) {

        frame = new JFrame();
        frame.setSize(300, 300);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JMenuBar menuBar = new JMenuBar();
        menu = new JMenu("Menu");
        JMenuItem menuItem = testItem.getMenuItem();
        testItem.setProperties(menuItem);
        menu.add(menuItem);
        menuBar.add(menu);

        frame.setJMenuBar(menuBar);
        frame.setVisible(true);
    }
 
源代码4 项目: arcusplatform   文件: Main.java
public static JFrame launch(Component contents, JMenuBar menuBar) {
   window = new JFrame("Oculus");
   window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   if(menuBar != null) {
      window.setJMenuBar(menuBar);
   }
   window.setLayout(new BorderLayout());
   window.getContentPane().add(createNotificationPanel(), BorderLayout.NORTH);
   window.getContentPane().add(contents, BorderLayout.CENTER);
   window.getContentPane().add(createStatusPanel(), BorderLayout.SOUTH);

   int width = 1400;
   int height = 1000;
   Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
   window.setBounds((int)screen.getWidth()/2 - width/2, (int)screen.getHeight()/2 - height/2, width, height);
   window.setLocationByPlatform(true);

   window.setVisible(true);
   Oculus.setMainWindow(window);
   return window;
}
 
源代码5 项目: netbeans   文件: MenuChecker.java
/** Get MenuBar and tranfer it to ArrayList.
     * @param menu menu to be tranfered
     * @return tranfered menubar */
    private static List<NbMenu> getMenuBarArrayList(JMenuBar menu) {
        visitMenuBar(menu);

        MenuElement [] elements = menu.getSubElements();

        List<NbMenu> list = new ArrayList<NbMenu>();
        for(int k=0; k < elements.length; k++) {
//            if(elements[k] instanceof JMenuItem) {
//                list.add(new NbMenu((JMenuItem)elements[k], null));
                JMenuBarOperator menuOp = new JMenuBarOperator(menu);
                JMenu item = menuOp.getMenu(k);
                list.add(new NbMenu(item, getMenuArrayList(item)));
//            }
            /*if(elements[k] instanceof JMenuBar) {
                JMenuBarOperator menuOp = new JMenuBarOperator(menu);
                list.add(getMenuArrayList(menuOp.getMenu(0)));
            }
             */
        }
        return list;
    }
 
源代码6 项目: IBC   文件: SwingUtils.java
private static void appendMenuItem(Component menuItem, StringBuilder builder, String indent) {
    if (menuItem instanceof JMenuBar) {
        appendMenuSubElements((MenuElement)menuItem, builder, indent);
    } else if (menuItem instanceof JPopupMenu) {
        appendMenuSubElements((MenuElement)menuItem, builder, indent);
    } else if (menuItem instanceof JMenuItem) {
        builder.append(NEWLINE);
        builder.append(indent);
        builder.append(((JMenuItem)menuItem).getText());
        builder.append(((JMenuItem)menuItem).isEnabled() ? "" : "[Disabled]");
        appendMenuSubElements((JMenuItem)menuItem, builder, "|   " + indent);
    } else if (menuItem instanceof JSeparator) {
        builder.append(NEWLINE);
        builder.append(indent);
        builder.append("--------");
    }
}
 
源代码7 项目: FCMFrame   文件: MainFrame.java
public JMenuBar createMenus() {
	JMenuBar menuBar = new JMenuBar();
	menuBar.getAccessibleContext().setAccessibleName("");

	JMenu fileMenu = (JMenu) menuBar.add(new JMenu("文件"));
	createMenuItem(fileMenu, "打开文件", "", "", new OpenFileAction());
	fileMenu.addSeparator();
	createMenuItem(fileMenu, "保存", "", "", new SaveFileAction());
	createMenuItem(fileMenu, "另存为...", "", "", new SaveAsFileAction());
	fileMenu.addSeparator();
	createMenuItem(fileMenu, "保存界面为图片...", "", "", new SaveAsPictureAction());
	fileMenu.addSeparator();
	createMenuItem(fileMenu, "打开文件位置", "", "", new FilesLocationAction());
	fileMenu.addSeparator();
	createMenuItem(fileMenu, "退出系统", "", "", new ExitSys());
	
	JMenu preferenceMenu = (JMenu) menuBar.add(new JMenu("选项"));
	JMenuItem mi = createCheckBoxMenuItem(preferenceMenu, "显示网格", "", "", new CoordinateAction());
	mi.setSelected(true);

	return menuBar;
}
 
源代码8 项目: jdk8u_jdk   文件: bug8031573.java
@Override
public void init() {
    try {

        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

        SwingUtilities.invokeAndWait(new Runnable() {

            @Override
            public void run() {
                JMenuBar bar = new JMenuBar();
                JMenu menu = new JMenu("Menu");
                JCheckBoxMenuItem checkBoxMenuItem
                        = new JCheckBoxMenuItem("JCheckBoxMenuItem");
                checkBoxMenuItem.setSelected(true);
                menu.add(checkBoxMenuItem);
                bar.add(menu);
                setJMenuBar(bar);
            }
        });
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
 
源代码9 项目: jaamsim   文件: GUIFrame.java
/**
 * Sets up the Control Panel's menu bar.
 */
private void initializeMenus() {

	// Set up the individual menus
	this.initializeFileMenu();
	this.initializeEditMenu();
	this.initializeToolsMenu();
	this.initializeWindowMenu();
	this.initializeOptionsMenu();
	this.initializeUnitsMenu();
	this.initializeHelpMenu();

	// Add the individual menu to the main menu
	JMenuBar mainMenuBar = new JMenuBar();
	mainMenuBar.add( fileMenu );
	mainMenuBar.add( editMenu );
	mainMenuBar.add( toolsMenu );
	mainMenuBar.add( viewsMenu );
	mainMenuBar.add( optionMenu );
	mainMenuBar.add( unitsMenu );
	mainMenuBar.add( helpMenu );

	// Add main menu to the window
	setJMenuBar( mainMenuBar );
}
 
源代码10 项目: IBC   文件: SwingUtils.java
/**
 * Traverses a container hierarchy and returns the JMenuItem with
 * the given path from the first JMenuBar that contains it
 *
 * @param container
 *  the Container to search in
 * @param path
 *  the required menu path
 * @return
 *  the JMenuItem at the specified path, if found; otherwise null
 */
static JMenuItem findMenuItemInAnyMenuBar(Container container, String[] path) {
    if (path.length == 0) return null;

    int i = 0;
    while (true) {
        JMenuBar menuBar = findMenuBar(container, i);
        if (menuBar == null) {
            String s = path[0];
            for (int j = 1; j < path.length; j++) s = s + " > " + path[j];
            return null;
        }
        JMenuItem menuItem = findMenuItem(menuBar, path);
        if (menuItem != null) return menuItem;
        i++;
    }
}
 
源代码11 项目: jdk8u-jdk   文件: WindowsRootPaneUI.java
void altPressed(KeyEvent ev) {
    MenuSelectionManager msm =
        MenuSelectionManager.defaultManager();
    MenuElement[] path = msm.getSelectedPath();
    if (path.length > 0 && ! (path[0] instanceof ComboPopup)) {
        msm.clearSelectedPath();
        menuCanceledOnPress = true;
        ev.consume();
    } else if(path.length > 0) { // We are in ComboBox
        menuCanceledOnPress = false;
        WindowsLookAndFeel.setMnemonicHidden(false);
        WindowsGraphicsUtils.repaintMnemonicsInWindow(winAncestor);
        ev.consume();
    } else {
        menuCanceledOnPress = false;
        WindowsLookAndFeel.setMnemonicHidden(false);
        WindowsGraphicsUtils.repaintMnemonicsInWindow(winAncestor);
        JMenuBar mbar = root != null ? root.getJMenuBar() : null;
        if(mbar == null && winAncestor instanceof JFrame) {
            mbar = ((JFrame)winAncestor).getJMenuBar();
        }
        JMenu menu = mbar != null ? mbar.getMenu(0) : null;
        if(menu != null) {
            ev.consume();
        }
    }
}
 
源代码12 项目: jdk8u-jdk   文件: MisplacedBorder.java
/**
 * Draws standard JMenuBar.
 */
private BufferedImage step1(final JMenuBar menubar) {
    final BufferedImage bi1 = new BufferedImage(W, H, TYPE_INT_ARGB_PRE);
    final Graphics2D g2d = bi1.createGraphics();
    g2d.scale(2, 2);
    g2d.setColor(Color.RED);
    g2d.fillRect(0, 0, W, H);
    menubar.paintAll(g2d);
    g2d.dispose();
    return bi1;
}
 
源代码13 项目: openjdk-jdk9   文件: JMenuBarOperator.java
/**
 * Maps {@code JMenuBar.menuSelectionChanged(boolean)} through queue
 */
public void menuSelectionChanged(final boolean b) {
    runMapping(new MapVoidAction("menuSelectionChanged") {
        @Override
        public void map() {
            ((JMenuBar) getSource()).menuSelectionChanged(b);
        }
    });
}
 
源代码14 项目: blog-codes   文件: BasicGraphEditor.java
/**
 * 
 */
public JFrame createFrame(JMenuBar menuBar)
{
	JFrame frame = new JFrame();
	frame.getContentPane().add(this);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setJMenuBar(menuBar);
	frame.setSize(870, 640);

	// Updates the frame title
	updateTitle();

	return frame;
}
 
源代码15 项目: FlatLaf   文件: FlatMenuItemBorder.java
@Override
public Insets getBorderInsets( Component c, Insets insets ) {
	if( c.getParent() instanceof JMenuBar ) {
		insets.top = scale( menuBarItemMargins.top );
		insets.left = scale( menuBarItemMargins.left );
		insets.bottom = scale( menuBarItemMargins.bottom );
		insets.right = scale( menuBarItemMargins.right );
		return insets;
	} else
		return super.getBorderInsets( c, insets );
}
 
源代码16 项目: FlatLaf   文件: FlatTitlePane.java
protected void addSubComponents() {
	leftPanel = new JPanel();
	iconLabel = new JLabel();
	titleLabel = new JLabel();
	iconLabel.setBorder( new FlatEmptyBorder( UIManager.getInsets( "TitlePane.iconMargins" ) ) );
	titleLabel.setBorder( new FlatEmptyBorder( UIManager.getInsets( "TitlePane.titleMargins" ) ) );

	leftPanel.setLayout( new BoxLayout( leftPanel, BoxLayout.LINE_AXIS ) );
	leftPanel.setOpaque( false );
	leftPanel.add( iconLabel );

	menuBarPlaceholder = new JComponent() {
		@Override
		public Dimension getPreferredSize() {
			JMenuBar menuBar = rootPane.getJMenuBar();
			return (menuBar != null && isMenuBarEmbedded())
				? FlatUIUtils.addInsets( menuBar.getPreferredSize(), UIScale.scale( menuBarMargins ) )
				: new Dimension();
		}
	};
	leftPanel.add( menuBarPlaceholder );

	createButtons();

	setLayout( new BorderLayout() );
	add( leftPanel, BorderLayout.LINE_START );
	add( titleLabel, BorderLayout.CENTER );
	add( buttonPanel, BorderLayout.LINE_END );
}
 
源代码17 项目: openjdk-jdk9   文件: JMenuBarOperator.java
/**
 * Maps {@code JMenuBar.setMargin(Insets)} through queue
 */
public void setMargin(final Insets insets) {
    runMapping(new MapVoidAction("setMargin") {
        @Override
        public void map() {
            ((JMenuBar) getSource()).setMargin(insets);
        }
    });
}
 
源代码18 项目: netbeans   文件: MenuEditLayer.java
public static boolean containsMenuTypeComponent(RADVisualComponent[] comps) {
    if(comps == null) return false;
    if(comps.length < 1) return false;
    for(RADVisualComponent c : comps) {
        if(JMenuItem.class.isAssignableFrom(c.getBeanClass())) return true;
        if(JMenuBar.class.isAssignableFrom(c.getBeanClass())) return true;
        if(JMenu.class.isAssignableFrom(c.getBeanClass())) return true;
    }
    return false;
}
 
源代码19 项目: jdk8u_jdk   文件: MisplacedBorder.java
@Override
public void run() {
    final JMenuBar menubar = new JMenuBar();
    menubar.add(new JMenu(""));
    menubar.add(new JMenu(""));
    final JFrame frame = new JFrame();
    frame.setUndecorated(true);
    frame.setJMenuBar(menubar);
    frame.setSize(W / 3, H / 3);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);

    // draw menu bar using standard order.
    final BufferedImage bi1 = step1(menubar);

    // draw menu border on top of the menu bar, nothing should be changed.
    final BufferedImage bi2 = step2(menubar);
    frame.dispose();

    for (int x = 0; x < W; ++x) {
        for (int y = 0; y < H; ++y) {
            if (bi1.getRGB(x, y) != bi2.getRGB(x, y)) {
                try {
                    ImageIO.write(bi1, "png", new File("image1.png"));
                    ImageIO.write(bi2, "png", new File("image2.png"));
                } catch (IOException e) {
                    e.printStackTrace();
                }
                throw new RuntimeException("Failed: wrong color");
            }
        }
    }
}
 
源代码20 项目: slick2d-maven   文件: Hiero.java
private void initializeMenus () {
	{
		JMenuBar menuBar = new JMenuBar();
		setJMenuBar(menuBar);
		{
			JMenu fileMenu = new JMenu();
			menuBar.add(fileMenu);
			fileMenu.setText("File");
			fileMenu.setMnemonic(KeyEvent.VK_F);
			{
				openMenuItem = new JMenuItem("Open Hiero settings file...");
				openMenuItem.setMnemonic(KeyEvent.VK_O);
				openMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, KeyEvent.CTRL_MASK));
				fileMenu.add(openMenuItem);
			}
			{
				saveMenuItem = new JMenuItem("Save Hiero settings file...");
				saveMenuItem.setMnemonic(KeyEvent.VK_S);
				saveMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, KeyEvent.CTRL_MASK));
				fileMenu.add(saveMenuItem);
			}
			fileMenu.addSeparator();
			{
				saveBMFontMenuItem = new JMenuItem("Save BMFont files (text)...");
				saveBMFontMenuItem.setMnemonic(KeyEvent.VK_B);
				saveBMFontMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B, KeyEvent.CTRL_MASK));
				fileMenu.add(saveBMFontMenuItem);
			}
			fileMenu.addSeparator();
			{
				exitMenuItem = new JMenuItem("Exit");
				exitMenuItem.setMnemonic(KeyEvent.VK_X);
				fileMenu.add(exitMenuItem);
			}
		}
	}
}
 
源代码21 项目: openjdk-jdk9   文件: MisplacedBorder.java
/**
 * Draws standard JMenuBar.
 */
private BufferedImage step1(final JMenuBar menubar) {
    final BufferedImage bi1 = new BufferedImage(W, H, TYPE_INT_ARGB_PRE);
    final Graphics2D g2d = bi1.createGraphics();
    g2d.scale(2, 2);
    g2d.setColor(Color.RED);
    g2d.fillRect(0, 0, W, H);
    menubar.paintAll(g2d);
    g2d.dispose();
    return bi1;
}
 
源代码22 项目: openjdk-jdk9   文件: DefaultJMenuDriver.java
public static Object getSelectedElement(JMenuBar bar) {
    MenuElement[] subElements = bar.getSubElements();
    for (MenuElement subElement : subElements) {
        if (subElement instanceof JMenu
                && ((JMenu) subElement).isPopupMenuVisible()) {
            return subElement;
        }
    }
    return null;
}
 
源代码23 项目: netbeans   文件: MenuEditLayer.java
private String getComponentDefaultsPrefix(JComponent c) {
    if(c instanceof JMenuBar) {
        return "MenuBar"; // NOI18N
    }
    if(c instanceof JMenu) {
        return "Menu"; // NOI18N
    }
    if(c instanceof JCheckBoxMenuItem) {
        return "CheckBoxMenuItem"; // NOI18N
    }
    if(c instanceof JRadioButtonMenuItem) {
        return "RadioButtonMenuItem"; // NOI18N
    }
    return "MenuItem"; // NOI18N
}
 
源代码24 项目: openjdk-jdk9   文件: JMenuBarOperator.java
/**
 * Maps {@code JMenuBar.getUI()} through queue
 */
public MenuBarUI getUI() {
    return (runMapping(new MapAction<MenuBarUI>("getUI") {
        @Override
        public MenuBarUI map() {
            return ((JMenuBar) getSource()).getUI();
        }
    }));
}
 
源代码25 项目: openjdk-jdk9   文件: AppleMenuDriver.java
private void activateMenu(JMenuBar bar) {
    if (getSelectedElement(bar) == null) {
        tryToActivate();
        if (getSelectedElement(bar) == null) {
            tryToActivate();
        }
    }
}
 
源代码26 项目: dragonwell8_jdk   文件: MisplacedBorder.java
/**
 * Draws standard JMenuBar.
 */
private BufferedImage step1(final JMenuBar menubar) {
    final BufferedImage bi1 = new BufferedImage(W, H, TYPE_INT_ARGB_PRE);
    final Graphics2D g2d = bi1.createGraphics();
    g2d.scale(2, 2);
    g2d.setColor(Color.RED);
    g2d.fillRect(0, 0, W, H);
    menubar.paintAll(g2d);
    g2d.dispose();
    return bi1;
}
 
源代码27 项目: Cafebabe   文件: Editor.java
private JMenuBar createMenu() {
	JMenuBar mb = new JMenuBar();
	JMenu actions = new JMenu(Translations.get("Actions"));
	JMenuItem close = new JMenuItem(Translations.get("Close all"));
	close.addActionListener(l -> {
		pane.closeAll();
	});

	actions.add(close);
	mb.add(actions);
	return mb;
}
 
源代码28 项目: openjdk-jdk9   文件: JMenuBarOperator.java
@Override
public Hashtable<String, Object> getDump() {
    Hashtable<String, Object> result = super.getDump();
    String[] items = new String[((JMenuBar) getSource()).getMenuCount()];
    for (int i = 0; i < ((JMenuBar) getSource()).getMenuCount(); i++) {
        if (((JMenuBar) getSource()).getMenu(i) != null) {
            items[i] = ((JMenuBar) getSource()).getMenu(i).getText();
        } else {
            items[i] = "null";
        }
    }
    addToDump(result, SUBMENU_PREFIX_DPROP, items);
    return result;
}
 
源代码29 项目: astor   文件: DateTimeBrowser.java
private void go(String[] args) {

        mainArgs = args;
        setDefaultTimeZone();   // let user override if needed
        // setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        //
        JMenuBar menuBar = new JMenuBar();
        setJMenuBar( menuBar );
        addMenus( menuBar );
        /*
         * Add a fast close listener
         */

        addWindowListener( new WindowAdapter() {
                    public void windowClosing(WindowEvent e)
                    {
                        setVisible( false );
                        dispose();
                        System.exit(0);
                    }
                }
            );

        //
        // Load current file, prime tables and JFrame.
        //
        currFile = new LoadedFile( mainArgs[0] );
        TableView tView = getDefaultTableView();
        resetDefaults( tView );
        //
        // Set max size at start, and display the window.
        //
        Dimension screenMax = Toolkit.getDefaultToolkit().getScreenSize();
        setSize ( screenMax );
        setVisible(true);
    }
 
源代码30 项目: TencentKona-8   文件: WindowsRootPaneUI.java
void altPressed(KeyEvent ev) {
    MenuSelectionManager msm =
        MenuSelectionManager.defaultManager();
    MenuElement[] path = msm.getSelectedPath();
    if (path.length > 0 && ! (path[0] instanceof ComboPopup)) {
        msm.clearSelectedPath();
        menuCanceledOnPress = true;
        ev.consume();
    } else if(path.length > 0) { // We are in ComboBox
        menuCanceledOnPress = false;
        WindowsLookAndFeel.setMnemonicHidden(false);
        WindowsGraphicsUtils.repaintMnemonicsInWindow(winAncestor);
        ev.consume();
    } else {
        menuCanceledOnPress = false;
        WindowsLookAndFeel.setMnemonicHidden(false);
        WindowsGraphicsUtils.repaintMnemonicsInWindow(winAncestor);
        JMenuBar mbar = root != null ? root.getJMenuBar() : null;
        if(mbar == null && winAncestor instanceof JFrame) {
            mbar = ((JFrame)winAncestor).getJMenuBar();
        }
        JMenu menu = mbar != null ? mbar.getMenu(0) : null;
        if(menu != null) {
            ev.consume();
        }
    }
}
 
 类所在包
 同包方法