我在班上使用CustomTabbedPane
在一帧内显示不同的面板。就功能而言,它工作正常。我希望我的程序优雅,所以当用户点击已经打开的按钮时,我不希望显示标签。我已经搜索了超过3个小时,但没有找到与我的问题类似的东西。下面是我添加产品的动作监听器的代码片段。
addProduct.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
Product obj=new Product();
//if(isTabPresent()){
obj.start();
mainPane.addTab("Add Product",obj);
mainPane.setSelectedComponent(obj);
//}
}
});
我还创建了一个方法isTabPresent()
来检查该选项卡是否在mainPane(CustomTabbedPane)中可用。我评论过isTabPresent()
,因为它没有按我想要的方式工作。
public boolean isTabPresent(Object tab){
for(int i=0;i<mainPane.getTabCount();i++)
if(mainPane.getComponentAt(i).equals(tab))
return true;
return false;
}
这是我试图完成我的工作,但它不起作用。任何帮助或任何更好的建议将不胜感激。非常感谢!