1

我觉得奇怪的是,在我的项目中,mouselistener 并不总是被听到。有没有其他人遇到过这个?还是我做错了什么?我有时必须点击它几次才能打开它。我确实在两次点击之间等待,看看这是否是性能问题。

JButton btnPin = new JButton("Pin");
btnPin.addMouseListener(new MouseAdapter() {
    public void mouseClicked(MouseEvent arg0) {
        if(staffPinDialog == null || staffPinDialog.isShowing() == false)
            staffPinDialog = new StaffPinDialog(idClicked);                 
    }
});

StaffPinDialog 是一个 JDialog,其中引用已在别处创建。idClicked 也总是被初始化。

4

1 回答 1

5

您不应该使用 MouseListener 来检测按钮点击。请改用 ActionListener。

这也将具有能够使用键盘单击按钮的额外优势。

于 2013-04-06T12:15:21.667 回答