2017-08-09 83 views

回答

2

如前所述@avojak,可以將DisposeListener添加到每個選項卡項目時它被封閉,得到通知。

但是,CTabFolder也提供了CTabFolder2Listener。它的close()方法在之前被稱爲選項卡項目已關閉。它甚至可以通過將事件doit標誌設置爲false來防止關閉標籤。

例如:

tabFolder.addCTabFolder2Listener(new CTabFolder2Adapter() { 
    @Override 
    public void close(CTabFolderEvent event) { 
    event.doit = false; // disallow close 
    } 
} 
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"); 
    } 
});