package com.software.GUI;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.KeyStroke;
public final class Menu {
窗口
private JFrame jFrame;
菜单栏
private JMenuBar jMenuBar;
菜单
private JMenu
jMenuFile,jMenuEdit,jMenuShow,jMenuFind,jMenuDocument,jMenuTool,jMenuWindow,jMenuHelp,jMenuMuch;
菜单项
private JMenuItem
jMenuItemNew,jMenuItemOpen,jMenuItemSave,jMenuItemExit,jMenuItemMenu1,jMenuItemMenu2,jMenuItemMenu3;
private Menu() {
不多说 ,创建各种对象
jFrame = new JFrame();
jMenuBar = new JMenuBar();
jMenuFile = new JMenu("文件(F)");
jMenuEdit = new JMenu("编辑(E)");
jMenuShow = new JMenu("显示(S)");
jMenuFind = new JMenu("搜索(I)");
jMenuDocument = new JMenu("文档(D)");
jMenuTool = new JMenu("工具(T)");
jMenuWindow = new JMenu("窗口(w)");
jMenuHelp = new JMenu("帮助(H)");
jMenuMuch = new JMenu("更多");
jMenuItemNew = new JMenuItem("新建");
jMenuItemOpen = new JMenuItem("打开");
jMenuItemSave = new JMenuItem("保存");
jMenuItemExit = new JMenuItem("退出");
jMenuItemMenu1 = new JMenuItem("菜单一");
jMenuItemMenu2 = new JMenuItem("菜单二");
jMenuItemMenu3 = new JMenuItem("菜单三");
将 菜单一 ,菜单二, 菜单三, 放进 (更多:一级菜单项)
jMenuMuch.add(jMenuItemMenu1);
jMenuMuch.add(jMenuItemMenu2);
jMenuMuch.add(jMenuItemMenu3);
将 新建,打开,保存,更多,退出 放进(文件:菜单)
jMenuFile.add(jMenuItemNew);
jMenuFile.add(jMenuItemOpen);
jMenuFile.add(jMenuItemSave);
jMenuFile.add(jMenuMuch);
jMenuFile.add(jMenuItemExit);
将 文件,编辑,显示,搜索,文档,工具,窗口,帮助 放进(菜单栏)
jMenuBar.add(jMenuFile);
jMenuBar.add(jMenuEdit);
jMenuBar.add(jMenuShow);
jMenuBar.add(jMenuFind);
jMenuBar.add(jMenuDocument);
jMenuBar.add(jMenuTool);
jMenuBar.add(jMenuWindow);
jMenuBar.add(jMenuHelp);
设置窗口的菜单栏为 jMenuBar
jFrame.setJMenuBar(jMenuBar);
设置窗口可见
jFrame.setVisible(true);
设置窗口尺寸
jFrame.setSize(500,300);
设置窗口居中显示
jFrame.setLocationRelativeTo(null);
设置窗口总是在最上层
jFrame.setAlwaysOnTop(true);
注意:个人理解:setMnemonic(keyEvent,VK_?) 是设置的菜单的快捷键
由 Alt+? 组合而成
设置(文件)菜单的快捷键
jMenuFile.setMnemonic(KeyEvent.VK_F);
设置(文件)菜单的快捷键
jMenuEdit.setMnemonic(KeyEvent.VK_E);
设置(文件)菜单的快捷键
jMenuShow.setMnemonic(KeyEvent.VK_S);
设置(文件)菜单的快捷键
jMenuFind.setMnemonic(KeyEvent.VK_I);
设置(文件)菜单的快捷键
jMenuDocument.setMnemonic(KeyEvent.VK_D);
设置(文件)菜单的快捷键
jMenuTool.setMnemonic(KeyEvent.VK_T);
设置(文件)菜单的快捷键
jMenuWindow.setMnemonic(KeyEvent.VK_W);
设置(文件)菜单的快捷键
jMenuHelp.setMnemonic(KeyEvent.VK_H);
注意:个人理解:setAccelerrator() 是设置的菜单项的快捷键
由 Ctrl+? 组成,此处设置文件菜单下 的新建快捷键
jMenuItemNew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
}
public static void main(String[] args) {
new Menu();
}
}
代码截图--------------------------------------------------------------