MouseMoveListener
状态的JavaDoc:“[...]鼠标移动时会收到通知的听众集合”。可悲的是,这是一个谎言。当用户拖动某些内容时,不会触发SWT.MouseMove
个事件。那么如何在拖动时收听MouseMove事件呢?
要复制问题,请将以下侦听器添加到simple example here:
Listener listener = new Listener() {
@Override
public void handleEvent(Event event) {
shell.setText(event.x + " - " + event.y);
}
};
label1.addListener(SWT.MouseMove, listener);
label2.addListener(SWT.MouseMove, listener);
shell标题将更新坐标,直到按下鼠标左键。但我总是需要它们。我尝试将相同的侦听器添加到DragSource
和DropTarget
(即使在我的真实应用程序中,我也无法访问它们),但无济于事。