我正在使用JideTabbedPane
。它扩展了JTabbedPane
。在用户编辑选项卡的名称后,我想检查名称是否符合某些条件,例如名称不能是空字符串。如果不符合标准,则应使用选项卡的旧名称。
我使用TabEditingListener
来尝试完成此任务,但它不起作用。这是我写的:
addTabEditingListener(new TabEditingListener() {
public void editingStopped(TabEditingEvent event) {
if (event.getNewTitle().isEmpty()) {
setTitleAt(event.getTabIndex(), event.getOldTitle());
}
}
}
任何想法都将不胜感激。
答案 0 :(得分:0)
我不熟悉JideTabbedPane
所以可能有更好的解决方案和机制。但是我想在编辑标题后调用的JTabbedPane#setTitleAt
方法会根据源代码为PropertyChangeEvent
属性触发indexForTitle
。您可以侦听该事件并执行验证。
答案 1 :(得分:0)
你应该有一个else语句,如果它无效,请将文本设置为输入的内容。