如何在菜单栏中右对齐一个菜单(使用 Java)?
假设我们向 MenuBar 添加了一个菜单 −
JMenuBar menuBar = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); menuBar.add(fileMenu);
在菜单之间添加一个 glue 构件,将其中一些菜单右对齐,例如 −
menuBar.add(Box.createHorizontalGlue());
在使用上述方法后添加的菜单将会右对齐 −
JMenu sourceMenu = new JMenu("Source"); sourceMenu.setMnemonic(KeyEvent.VK_S); menuBar.add(sourceMenu);
下面提供了一个使用 Java 在菜单栏中右对齐菜单的示例 −
示例
package my; import java.awt.event.KeyEvent; import javax.swing.Box; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; public class SwingDemo { public static void main(final String args[]) { JFrame frame = new JFrame("MenuBar Demo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JMenuBar menuBar = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); menuBar.add(fileMenu); JMenuItem menuItem1 = new JMenuItem("New", KeyEvent.VK_N); fileMenu.add(menuItem1); JMenuItem menuItem2 = new JMenuItem("Open File", KeyEvent.VK_O); fileMenu.add(menuItem2); JMenu editMenu = new JMenu("Edit"); editMenu.setMnemonic(KeyEvent.VK_E); menuBar.add(editMenu); JMenuItem menuItem3 = new JMenuItem("Cut", KeyEvent.VK_C); editMenu.add(menuItem3); menuBar.add(Box.createHorizontalGlue()); JMenu sourceMenu = new JMenu("Source"); sourceMenu.setMnemonic(KeyEvent.VK_S); menuBar.add(sourceMenu); JMenu refactorMenu = new JMenu("Refactor"); refactorMenu.setMnemonic(KeyEvent.VK_R); menuBar.add(refactorMenu); JMenu navigateMenu = new JMenu("Navigate"); navigateMenu.setMnemonic(KeyEvent.VK_A); menuBar.add(navigateMenu); menuBar.revalidate(); frame.setJMenuBar(menuBar); frame.setSize(550, 350); frame.setVisible(true); } }
输出
广告