我正在使用 eclipse rcp
和 swt
来开发应用程序。我有一个 list
并且我需要在移动时将其可见性设置为 false标题栏或当用户单击 titleBar
时。我无法找到 titleBar
的任何事件。是否有任何 titleBar
事件可以解决我的问题?或者有什么可能可以解决我的问题吗?我搜索过,但只能找到 Flex 作为
function panelClick ( event:MouseEvent ) : void
{
trace( event.localX + '/' + event.localY );
}
使用 eclispe 的 swt 是否有同样的事情? 提前致谢。
最佳答案
以下代码将在相应事件发生时输出“Move”和“Minimize”:
public static void main(String[] args) {
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
final Button dummy = new Button(shell, SWT.PUSH);
dummy.setText("Dummy");
shell.addListener(SWT.Move, new Listener() {
@Override
public void handleEvent(Event arg0) {
System.out.println("Move");
}
});
shell.addListener(SWT.Iconify, new Listener() {
@Override
public void handleEvent(Event arg0) {
System.out.println("Minimize");
}
});
shell.pack();
shell.setSize(400, 300);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
但是,SWT.MOVE
事件仅在 shell 移动之后(即“移动”结束时)才会触发。
关于java - 任何确定事件的方法,例如在 Eclipse 应用程序中单击标题栏的鼠标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12337343/