Câu hỏi Sự kiện chuột phải của Java


Trên ba nút chuột của tôi MouseEvent.BUTTON2= Nhấp chuột giữa và MouseEvent.BUTTON3 = Nhấp chuột phải.

Đây là trường hợp trên một con chuột hai nút?

Cảm ơn


76
2017-12-24 10:29


gốc




Các câu trả lời:


Để tránh bất kỳ sự mơ hồ nào, hãy sử dụng các phương pháp tiện ích từ SwingUtilities :

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


148
2017-12-24 10:40





Có, hãy xem chủ đề này nói về sự khác biệt giữa các nền tảng.

Cách phát hiện sự kiện nhấp chuột phải cho Mac OS

BUTTON3 là giống nhau trên tất cả các nền tảng, bằng với nút chuột phải. BUTTON2 chỉ đơn giản là bỏ qua nếu nút giữa không tồn tại.


8
2017-12-24 10:37





tôi đã nhìn thấy

anEvent.isPopupTrigger() 

được sử dụng trước đây. Tôi khá mới với Java vì vậy tôi rất vui khi nghe những suy nghĩ về cách tiếp cận này :)


1
2018-06-29 02:00



vâng, nhưng theo bugs.java.com/bugdatabase/view_bug.do?bug_id=4119064 và thực hành của riêng tôi chức năng này sẽ không hoạt động chính xác trong Windows. Và lỗi này đã kéo dài 16 năm rồi ... - Gangnus