如何在CTabItem
事件的SWT.CLOSE
中添加听众?
我尝试了tab.addListener
,但它不起作用。
答案 0 :(得分:2)
如上所述@avojak,您可以为每个标签项添加DisposeListener
,以便在关闭时收到通知。
但是,CTabFolder
还提供了CTabFolder2Listener
。在标签项关闭之前,其close()
方法称为。它甚至允许通过将事件doit
标志设置为false来阻止关闭选项卡。
例如:
tabFolder.addCTabFolder2Listener(new CTabFolder2Adapter() {
@Override
public void close( CTabFolderEvent event ) {
event.doit = false; // disallow close
}
}
答案 1 :(得分:1)
我相信你所寻找的是CTabItem.addDisposeListener(DisposeListener)
- 继承自Widget
。
例如:
final CTabFolder folder = new CTabFolder(parent, SWT.NONE);
// ...
final CTabItem item = new CTabItem(folder, SWT.NONE);
item.setText("Item 1");
item.setShowClose(true);
item.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(final DisposeEvent e) {
System.out.println("Closed");
}
});