假如我想做一个界面, 有个CTabItem,有关闭按钮..
我不想要用户关闭这个界面(本来可以不显示关闭按钮),但不有其它副界面须要让用户关闭...所有只有显示了..
我捕捉到这个事件后,如何不关闭他? 就好像不要他做什么事一样.(捕捉到事件后,该怎么让什么事都不做?)
但另外的CTabItem能关闭...
----------------------------------------------------------------------------------------------------------------------------------------
在CTabFolderEvent中,关闭tabitem的事件不是由item自己管理的,是由CTabFolder管理的,你必须在CTabFolder上添加CTabFolderListener,在listener里检测你不想关闭的item,然后设置event.doit=false即可。如:
tabFolder = new CTabFolder(this,arg1);
tabFolder.MIN_TAB_WIDTH = 100;
tabFolder.addCTabFolderListener(new CTabFolderAdapter(){
public void itemClosed(CTabFolderEvent event){
CTabItem closingItem = (CTabItem)event.item;
int index = tabFolder.indexOf(closingItem);
BrowserTab tab = (BrowserTab)tabs.get(index);
if(!tab.canClose())
event.doit = false;
}
});
----------------------------------------------------------------------------------------------------------------------------------------
.addCTabFolderListener()这个方法在3.0已经不赞成使用了.
用.addCTabFolder2Listener()这个了. 呵呵.
tabFolder.addCTabFolder2Listener(new CTabFolder2Adapter() {
public void close(CTabFolderEvent e) {
if (e.item == tabItemMain) {
e.doit = false;
}
}
});