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 に答える