对于Windows和Linux,我能够检测到右键单击.但对于mac我不知道如何检测右键单击.
如何编写java程序来检测Mac OS的右键单击
谢谢Sunil KUmar Sahoo
cam*_*ckr 15
不使用MouseEvent.BUTTON3,而是使用更好的自我文档化方法
if (SwingUtilities.isRightMouseButton(event))
// do something
Run Code Online (Sandbox Code Playgroud)
此外,如果您使用此代码显示弹出菜单,则不应使用此方法,因为每个操作系统都有不同的击键来启动弹出菜单.阅读关于启动弹出菜单的Swing教程中的部分.
这与检测Windows或Linux上的右键单击相同 - 您调用给定的MouseEvent getButton()方法来检查是否BUTTON3被单击.例如,看一下示例MouseListener的以下片段:
public class MyListener implements MouseListener
{
// ... code ...
public void mouseClicked(MouseEvent event)
{
if (event.getButton() == MouseButton.BUTTON3)
{
// Right-click happened
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果用户实际上有一个双键鼠标,则只检测右键单击.由于大多数Mac鼠标在不久之前只有一个按钮,因此您可能还需要考虑检测控制点击(这是当时右键单击的常用习惯用法).如果您决定这样做,那么实现非常简单:只需添加另一个检查if if event.isControlDown()返回true.
| 归档时间: |
|
| 查看次数: |
13313 次 |
| 最近记录: |