我写了个程序,在JTable中的数据上单击右键弹出一个菜单如下图单击删除时弹出一个对话框,可以选择是或者否在多次操作时发现不管我选择是或者否,理论上选择之后就关闭该该警告对话框...
我写了个程序,在JTable中的数据上单击右键弹出一个菜单如下图
单击删除时弹出一个对话框,可以选择是或者否
在多次操作时发现不管我选择是或者否,理论上选择之后就关闭该该警告对话框,不过实际情况是我在选择后对话框关闭了,但是又会自动的再弹出来,要关闭好几次才能关闭。 求各位高手看看,悬赏不是问题。 以下是侦听事件的代码/** * 内部类,实现对JTable的右键侦听
* @author Administrator
*
*/
class myListenerJTable extends MouseAdapter{
private JPopupMenu jPopupMenu = new JPopupMenu();
private JMenuItem delete = new JMenuItem("删除");
private JMenuItem save = new JMenuItem("保存");
public void mousePressed(MouseEvent event) {
detail_TableMouseMousePressed(event);
}
private void detail_TableMouseMousePressed(MouseEvent event) {
if(event.getButton()==3){
jPopupMenu.add(delete);
jPopupMenu.add(save);
delete.setIcon(new ImageIcon("image\\delete.png"));
delete.addActionListener(new ActionListener() {
int b=0;
public void actionPerformed(ActionEvent arg0) {
int a = JOptionPane.showConfirmDialog(null, "是否删除", "警告", JOptionPane.YES_NO_OPTION);
// JOptionPane.showMessageDialog(null, a);
System.out.println(b);
this.b ++;
}
});
save.setIcon(new ImageIcon("image\\save.png"));
save.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
}
});
jPopupMenu.show(event.getComponent(), event.getX(), event.getY());
}
}
}
下面这一行是JTable 对象添加的侦听事件
detail_Table.addMouseListener(new myListenerJTable());
展开