Java Swing 鼠标点击列表事件,多次触发问题

下面是一个鼠标点击事件和按钮事件,我选中了一行,然后点击按钮。第一次选中会弹出一个框,但是当我第二次选中就会弹出两个,第三次弹出三个,是哪里出现了问题吗?

jt.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                int row = jt.getSelectedRow();
                if (row!=-1) {
                    /*预约按钮事件*/
                    button2.addActionListener(new ActionListener(){
                        public void actionPerformed(ActionEvent e1) {
                            //System.out.println(row);    
                            String a = jt.getValueAt(jt.getSelectedRow(),0).toString().trim();
                            try {
                                new BookingView(a);
                            } catch (Exception e2) {
                                e2.printStackTrace();
                            }
                        }
                    });
                }
            }
        });

image.png
image.png
上图输出的是 行坐标,第一个点了第一行再点预约输出0,第二次点了第二行再点预约,第三次点了第三行再点预约输出三个坐标。
应该是按钮事件被多次创建?鼠标事件被多次创建?找了很久找不到。。。

阅读 3.1k
1 个回答

原因是创建了多个BookingView
可以判断如果创建了,只是设置a就好,不要重新new,觉得可以点个关注

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题