在SWT工具项上检测CTRL+Click



是否有一种方法可以检测工具项上的ctrl单击?我想区分CTRL+Click和普通鼠标点击。

ToolBar toolbar= new ToolBar(parent, SWT.NONE);
ToolItem saveToolItem = new ToolItem(toolbar, SWT.PUSH);
...
saveToolItem.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> {
// if CTRL+Click {
//     specialSave();
// } else
normalSave();
}));

传递给事件的SelectionEvent(在代码中的e中)有一个stateMask字段,包括被按下的修饰符键。Ctrl.

SWT.CTRL

常数:

if ((e.stateMask & SWT.CTRL) == SWT.CTRL)

测试按下的Ctrl键

最新更新