如何验证JTabbedPane中的选项卡名称

时间:2012-04-10 21:04:38

标签: java swing jtabbedpane

我正在使用JideTabbedPane。它扩展了JTabbedPane。在用户编辑选项卡的名称后,我想检查名称是否符合某些条件,例如名称不能是空字符串。如果不符合标准,则应使用选项卡的旧名称。

我使用TabEditingListener来尝试完成此任务,但它不起作用。这是我写的:

  addTabEditingListener(new TabEditingListener() {
    public void editingStopped(TabEditingEvent event) {
      if (event.getNewTitle().isEmpty()) {
        setTitleAt(event.getTabIndex(), event.getOldTitle());
      }
    }
  }

任何想法都将不胜感激。

2 个答案:

答案 0 :(得分:0)

我不熟悉JideTabbedPane所以可能有更好的解决方案和机制。但是我想在编辑标题后调用的JTabbedPane#setTitleAt方法会根据源代码为PropertyChangeEvent属性触发indexForTitle。您可以侦听该事件并执行验证。

答案 1 :(得分:0)

你应该有一个else语句,如果它无效,请将文本设置为输入的内容。