次のようなコードがあります。
JComponent component = ...
component.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
final int button = e.getButton();
System.out.println("button = " + button);
}
});
今日、e.getButton() が 0 (NO_BUTTON) を返したために発生したクラッシュ レポートを受け取りました。何が原因でしょうか?マウス クリックをボタンなしにするにはどうすればよいですか?
これは、Mac OS X 10.5.8 上の Java 1.5.0_30 で発生しました。
問題のコードは 4 年間運用されており、毎日何千人ものユーザーが使用していますが、このエラーがクラッシュ レポートに表示されたのはこれが初めてです。