聽SWT.MouseUp
和SWT.KeyUp
似乎是在你的情況要走的路:
public static void main(String[] args)
{
Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
Text text = new Text(shell, SWT.BORDER);
Listener listener = new Listener()
{
@Override
public void handleEvent(Event arg0)
{
System.out.println("Event");
}
};
text.addListener(SWT.KeyUp, listener);
text.addListener(SWT.MouseUp, listener);
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
你可以跟蹤老光標處的一個static
變量和Listener
比較它的當前位置。
另一個非常有用的事件是SWT.Verify
每當發生變更包含的文本被調用。請注意,這不會考慮鼠標位置的變化。
來源
2013-04-08 10:11:50
Baz