鼠标添加右键菜单
2015-04-10 20:03
309 查看
鼠标右键弹出菜单
import java.awt.BorderLayout; import java.awt.Container; import java.awt.Point; import java.awt.event.InputEvent; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; import javax.swing.JFrame; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JTable; import javax.swing.table.TableColumnModel; public class SimpleTableTest extends JFrame{ Object tip; protected JTable table,table1; JMenuItem jMenuItem1 = new JMenuItem(); JMenuItem jMenuItem2 = new JMenuItem(); JPopupMenu popup = new JPopupMenu(); public SimpleTableTest() { Container pane = getContentPane(); pane.setLayout(new BorderLayout()); TableValues tv = new TableValues(); table =new JTable(tv); //table1 = new JTable(new javax.swing.table.DefaultTableModel(4, 5)); pane.add(table,BorderLayout.CENTER); //pane.add(table1,BorderLayout.SOUTH); table.addMouseListener(new java.awt.event.MouseAdapter() { public void mousePressed(MouseEvent e) { Point point = e.getPoint(); int x = table.rowAtPoint(point); int y = table.columnAtPoint(point); System.out.println("x:"+x); System.out.println("y:"+y); Object tip = table.getValueAt(x, y); if(tip.toString().equalsIgnoreCase("1")){ jMenuItem1.setEnabled(false); pane_mouselistener(e); }else{ jMenuItem1.setEnabled(true); pane_mouselistener(e); } } }); addMenu(); } private void pane_mouselistener(MouseEvent e) { // TODO Auto-generated method stub int mods = e.getModifiers(); if ((mods & InputEvent.BUTTON3_MASK) != 0) { popup.show(this, e.getX(), e.getY()); } } private void addMenu(){ jMenuItem1.setText("复制"); jMenuItem2.setText("粘贴"); popup.add(jMenuItem1); popup.add(jMenuItem2); } public static void main(String[] args){ SimpleTableTest stt = new SimpleTableTest(); stt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); stt.setSize(400, 200); stt.setVisible(true); } }
package tableTest; import javax.swing.table.AbstractTableModel; import java.awt.*; import javax.swing.*; public class TableValues extends AbstractTableModel{ public int[][] values = {{1,2,3,4,5},{2,3,4,5,6},{3,4,5,6,7},{4,5,6,7,8}}; String[] columnNames = {"English","Japanese","aa","bb","cc"}; public int getRowCount() { return values.length; } public int getColumnCount() { return values[0].length; } public Object getValueAt(int rowIndex, int columnIndex) { return values[rowIndex][columnIndex]; } public String getColumnName(int column) { return columnNames[column].toString(); } }
相关文章推荐
- Silverlight实用窍门系列:4.Silverlight 4.0添加鼠标右键菜单和Silverlight全屏模式的进入退出。【附带源码实例】
- Win7如何自定义鼠标右键菜单 添加在此处打开CMD窗口
- 在注册表中添加windows鼠标右键菜单
- 鼠标右键添加“删除svn文件夹”菜单
- Silverlight 4.0添加鼠标右键菜单和Silverlight全屏模式的进入退出
- 如何在TabControl中响应右键鼠标(添加一个ContextMenu就可以了),如何让在tab标签处右键菜单和在内容处右键菜单显示不同的菜单?
- 4.Silverlight 4.0添加鼠标右键菜单和Silverlight全屏模式的进入退出。
- Win7如何自定义鼠标右键菜单 添加用记事本打开
- 使用OpenLayers3 添加地图鼠标右键菜单
- XP技巧 鼠标右键菜单添加移动到文件夹
- MFC添加鼠标右键菜单
- windowxp添加鼠标右键菜单
- Win7如何自定义鼠标右键菜单 添加新建EXCEL文档
- Windows7系统下将UltraEdit添加到鼠标右键菜单
- centos中给鼠标右键菜单添加“打开…
- OpenLayers 3 之 添加地图鼠标右键菜单
- TortoiseSVN安装后添加到鼠标右键菜单
- 关于添加cmd到鼠标右键菜单
- Win7如何自定义鼠标右键菜单 添加新建PowerPoint文档
- 在centos中给鼠标右键菜单添加“打…