菜单栏和右键弹出框

原创 2012年03月23日 09:15:45
class MenuFrame extends JFrame {
 public MenuFrame() {
  this.setTitle("Menu Test");
  this.setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
  JMenu fileMenu = new JMenu("File");
  fileMenu.add(new TestAction("New"));
  JMenuItem openItem = fileMenu.add(new TestAction("Open"));
  openItem.setAccelerator(KeyStroke.getKeyStroke("ctrl o"));
  fileMenu.addSeparator();
  saveAction = new TestAction("Save");
  JMenuItem saveItem = fileMenu.add(saveAction);
  saveItem.setAccelerator(KeyStroke.getKeyStroke("ctrl s"));
  saveAsAction = new TestAction("Save As");
  fileMenu.add(saveAsAction);
  fileMenu.addSeparator();
  fileMenu.add(new AbstractAction("Exit") {
   public void actionPerformed(ActionEvent event) {
    System.exit(0);
   }
  });
  readonlyItem = new JCheckBoxMenuItem("Read-Only");
  readonlyItem.addActionListener(new ActionListener() {
   public void actionPerformed(ActionEvent event) {
    boolean saveOk = !readonlyItem.isSelected();
    saveAction.setEnabled(saveOk);
    saveAsAction.setEnabled(saveOk);
   }
  });
  ButtonGroup group = new ButtonGroup();
  JRadioButtonMenuItem insertItem = new JRadioButtonMenuItem("Insert");
  insertItem.setSelected(true);
  JRadioButtonMenuItem overtypeItem = new JRadioButtonMenuItem("Overtype");
  group.add(insertItem);
  group.add(overtypeItem);
  Action cutAction = new TestAction("Cut");//copyAction,pasteAction一样
  cutAction.putValue(Action.SMALL_ICON, new ImageIcon("c:/picture/1.gif"));
  JMenu editMenu = new JMenu("Edit");
  editMenu.add(cutAction);//copyAction,pasteAction
  JMenu optionMenu = new JMenu("Options");
  optionMenu.add(readonlyItem);
  optionMenu.addSeparator();
  optionMenu.add(insertItem);//overtypeItem
  editMenu.addSeparator();
  editMenu.add(optionMenu);
  JMenu helpMenu = new JMenu("Help");
  helpMenu.setMnemonic('H');
  JMenuItem indexItem = new JMenuItem("Index");
  indexItem.setMnemonic('I');
  helpMenu.add(indexItem);
  Action aboutAction = new TestAction("About");
  aboutAction.putValue(Action.MNEMONIC_KEY, new Integer('A'));
  helpMenu.add(aboutAction);
  JMenuBar menuBar = new JMenuBar();
  this.setJMenuBar(menuBar);
  menuBar.add(fileMenu);//editMenu,helpMenu
  //右键弹出框
  popup = new JPopupMenu();
  popup.add(cutAction);//copyAction,pasteAction
  JPanel panel = new JPanel();
  panel.setComponentPopupMenu(popup);
  this.add(panel);
  panel.addMouseListener(new MouseAdapter() {
  });
 }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

MFC学习笔记.day03-菜单,图形标记菜单创建,菜单栏禁用,命令响应,右键弹出菜单,添加菜单

菜单命令响应View类先响应,接下来是Doc类,然后是我们的CMainframe,最后是我们的App类。菜单消息的响应过程:首先是-《框架类》接受消息,然后交给《view类》,不能响应则继续转交给《d...

delphi TDbGrid 右键 PopupMenu 菜单只在有数据的地方弹出

====================================================== 注:本文源代码点此下载 =============================...

js实现右键弹出多级菜单特效

转自:http://www.zzjs.net/html/2656.html 右击鼠标弹出四级导航菜单,可自定义菜单内容和数量。 代码如下: 站长特效 js实现右键...

MFC CListBox实现右键单击弹出菜单

项目要求 在界面的列表框中 实现右键单击选择项 时,弹出菜单,并且处理这个菜单 一、创建右键菜单资源 右击项目->添加->资源->Menu->新建 添加菜单项 二、处理菜单COMMAND消息 ...

VC中为clistctrl右键弹出菜单

一、在资源编辑器中建立一个菜单资源   新建一个菜单资源,比如把菜单的ID号为IDC_POPMENU。此菜单有一项两层,即有一个可弹出的菜单项,而此菜单项的弹出内容即为将要建立的弹出式菜单的内容。至于...
  • oldmtn
  • oldmtn
  • 2011-01-27 12:32
  • 2962

MFC 右键弹出菜单

右键弹出菜单,网上搜的代码中一直搞不明白的是菜单的ID,后来知道是菜单名就是ID。 先建一个resource菜单,编辑好菜单之后,找到对话框属性页的message,添加WM_CONTEXTNENU, ...

VC中为clistctrl右键弹出菜单【转】

一、在资源编辑器中建立一个菜单资源   新建一个菜单资源,比如把菜单的ID号为IDC_POPMENU。此菜单有一项两层,即有一个可弹出的菜单项,而此菜单项的弹出内容即为将要建立的弹出式菜单的内容。...

C#TreeView窗体版点击右键弹出菜单+直接修改名称+新建节点

这个文章与之前写的“C#TreeView窗体版点击右键弹出菜单+右键获取信息”,有些不一样的地方。改进了,右键“新建”可以直接添加新的节点并且在节点上直接修改名字;右键“重命名”可以直接在节点上修改节...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)