0

public boolean mouseDown(Event ev, int x, int y)マウスのクリックを検出するために使用します。
マウスの右ボタン (ev.metaDown() が true) と左と中央を区別できます。

左ボタンと中央ボタンを区別するにはどうすればよいですか? または、mouseDown で不可能な場合は、何を使用すればよいですか?

4

3 に答える 3

1

ALT_MASKを使用してみてください:

このフラグは、イベントが発生したときに Alt キーが押されていたことを示します。マウス イベントの場合、このフラグはマウスの中央ボタンが押されたか離されたことを示します。

したがって、コードは次のようになります。

if (ev.modifiers & Event.ALT_MASK != 0) {
    // middle button was pressed
}

もちろん、これはすべて、非推奨であるため、そもそも mouseDown を使用する十分な理由があることを前提としています。(おそらく)代わりにprocessMouseEventを使用する必要があります。これにより、MouseEvent で遊ぶことができます。

于 2008-11-06T21:32:26.103 に答える
1

mouseDownは非推奨です。必要なものはすべて、MouseEvent からアクセスできます。getButton。BUTTON3 を追跡します。

于 2008-10-12T13:04:16.217 に答える
0

これはそれを行うかもしれません:

http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/SwingUtilities.html#isMiddleMouseButton(java.awt.event.MouseEvent)

自分で試したことはありません。

于 2008-10-12T12:53:56.767 に答える