论坛首页 Java企业应用论坛

给图形模型添加菜单

浏览 1542 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-06-10   最后修改:2009-11-26
有多种方法,一种是八进制 BLOG里写的给editor添加上下文菜单,然后通过判断去给模型添加不同的菜单,第二种则是自己给ifigure构造一个Control然后去构造菜单,第三种是最简单的了,添加鼠标事件,判断是否是鼠标右键事件,如果是,则创建菜单,由于时间的关系我这里介绍最简单的吧
image.addMouseListener(new MouseListener(){
			public void mousePressed(MouseEvent me){
				MenuManager menuManager = new MenuManager(); 
				int i = me.button;
				
				switch(i){
				
				case 1:
					
					
					DeviceTreeViewer viewPart = (DeviceTreeViewer) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().findView(DeviceTreeViewer.ID);;
					
					TreeViewer viewer = viewPart.getTreeViewer();
					
					int size = viewer.getTree().getItem(0).getItems().length;
					
					String str = netunit.getText().split(";")[0].substring(3);
					
					TreeItem[] item = viewer.getTree().getItem(0).getItems();
					
					for(int j = 0; j < size; j++){
						
						if(str.equals(HandleXML.getPreviousValue(item[j].getText())))
						
							viewer.getTree().setSelection(item[j]);
						
					}
					
					menuManager.add(new Action("创建") { 
						@Override 
						public void run() { 
							
							CreateNetunitDialog create = new CreateNetunitDialog();
							
							create.open();
							
						} 
						});
					break;
					
				case 2:
					
					break;
				
				case 3:
					
					Menu meu = new Menu(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),SWT.NONE);
					MenuItem items = new MenuItem(meu,SWT.NONE);
					items.setText("右键");
					meu.setVisible(true);
					MenuManager menuManager1 = new MenuManager();  
					
					break;
				}
				
				
			}




case 3:里面的代码就是 ,case 3代码鼠标的邮件,至于1,2不用说大家也就明白了
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics