92

On my three button mouse MouseEvent.BUTTON2= Middle Click and MouseEvent.BUTTON3 = Right Click.

Is this the case on a two button mouse?

Thanks

mKorbel
  • 109,525
  • 20
  • 134
  • 319
DD.
  • 21,498
  • 52
  • 157
  • 246

3 Answers3

185

To avoid any ambiguity, use the utilities methods from SwingUtilities :

SwingUtilities.isLeftMouseButton(MouseEvent anEvent) SwingUtilities.isRightMouseButton(MouseEvent anEvent) SwingUtilities.isMiddleMouseButton(MouseEvent anEvent)

barjak
  • 10,842
  • 3
  • 33
  • 47
10

Yes, take a look at this thread which talks about the differences between platforms.

How to detect right-click event for Mac OS

BUTTON3 is the same across all platforms, being equal to the right mouse button. BUTTON2 is simply ignored if the middle button does not exist.

Community
  • 1
  • 1
Codemwnci
  • 54,176
  • 10
  • 96
  • 129
1

I've seen

anEvent.isPopupTrigger() 

be used before. I'm fairly new to Java so I'm happy to hear thoughts about this approach :)

Sam Jarman
  • 7,277
  • 15
  • 55
  • 100
  • 7
    yes, but according to http://bugs.java.com/bugdatabase/view_bug.do?bug_id=4119064 and my own practice this function won't work correctly in Windows. And the bug lasts for 16 years already... – Gangnus Dec 01 '14 at 13:48