您的位置:首页 > 其它

JTable中点击鼠标右键弹出菜单

2013-07-25 18:30 1031 查看
在swing的开发中,对JTable的操作可能会用到在表中点击鼠标右键弹出一个菜单。

首先创建一个JPopupMenu

private void createPopupMenu() {
m_popupMenu = new JPopupMenu();

JMenuItem delMenItem = new JMenuItem();
delMenItem.setText("  删除  ");
delMenItem.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
//该操作需要做的事
}
});
m_popupMenu.add(delMenItem);
}


然后为JTable对象添加点击事件

jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jTable1MouseClicked(evt);
}
});

 

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {

mouseRightButtonClick(evt);
}


 

//鼠标右键点击事件
private void mouseRightButtonClick(java.awt.event.MouseEvent evt) {
//判断是否为鼠标的BUTTON3按钮,BUTTON3为鼠标右键
if (evt.getButton() == java.awt.event.MouseEvent.BUTTON3) {
//通过点击位置找到点击为表格中的行
int focusedRowIndex = jTable1.rowAtPoint(evt.getPoint());
if (focusedRowIndex == -1) {
return;
}
//将表格所选项设为当前右键点击的行
jTable1.setRowSelectionInterval(focusedRowIndex, focusedRowIndex);
//弹出菜单
m_popupMenu.show(jTable1, evt.getX(), evt.getY());
}

}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐