菜单栏和右键弹出框

原创 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() {
  });
 }
}

全心全意为人民服务-JS实现右击弹出框

从上图可以看到,我想对选中的行操作。还需要点击工具栏的相应选项。能不能利用就近原则直接操作呢。于是有了这样一种实现,在实习的地方右击出现一个弹出框,里面有对应的工具栏选项。这样就方便多了,也体现了无处...
  • u013037201
  • u013037201
  • 2016年11月07日 20:47
  • 677

everedit如何添加右键打开

选择工具、设置、常规。 勾选即可。
  • CJ_xiaoni
  • CJ_xiaoni
  • 2018年01月21日 17:06
  • 61

js禁止右键

1。整篇文章就不能点右键、区域选择和复制了,不过还是能查看源文件和下载该页。代码如下: 2.在页面中加入如下语句,则网页将不能被保存,让网页无法 另存为: 在......之间加入 ...
  • nycqwert
  • nycqwert
  • 2014年09月26日 09:49
  • 771

如何修改右键弹出的菜单的内容

CMenu menu;  ClientToScreen(&point);  VERIFY( menu.LoadMenu( IDR_MENU1 ) );  CMenu* popup = menu.Get...
  • yxyong2006
  • yxyong2006
  • 2009年08月13日 14:25
  • 317

js 右键弹出自定义菜单

近期在项目中有一个右键菜单的需求,发现很多实现都比较复杂,于是自己花了一点时间稍微研究了一下,下面提供一个简洁的实现方法。 js声明部分://创建右键菜单 var epMenu={ crea...
  • ttx_laughing
  • ttx_laughing
  • 2016年11月24日 17:17
  • 911

js右击弹出菜单

2008-07-29 13:50 /*******js右击弹出菜单***************/ var mname=new Array( "首 页", "修 改",...
  • A_post
  • A_post
  • 2012年08月24日 18:04
  • 1289

右键快捷菜单无共享选项解决办法

首先检查:   1.是否administrator身份登录   2.运行services.msc,检查server,workstation是否启动   3.本地连接属性,看“文件打印机共享”的服务是否...
  • jebersun
  • jebersun
  • 2010年08月27日 16:29
  • 217

VC++2010右键菜单添加图标

利用theApp.GetContextMenuManager()->ShowPopupMenu(hMenu,point.x,point.y,this);添加右键菜单,是可以根据菜单项的ID项自动添加图...
  • Augusdi
  • Augusdi
  • 2012年04月21日 23:12
  • 2688

Sublime 自定义右键菜单

…\Sublime Text\Data\Packages\Default\Context.sublime-menu[ { "command": "open_context_url", "cap...
  • jx520
  • jx520
  • 2017年02月09日 12:26
  • 388

QT生成右键菜单栏

 QT生成右键菜单栏   ui.lineEdit->setContextMenuPolicy(Qt::CustomContextMenu);   setContext...
  • CPeasant_Eva
  • CPeasant_Eva
  • 2014年12月03日 14:47
  • 475
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:菜单栏和右键弹出框
举报原因:
原因补充:

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