一个 JTabbedPane  现在有2个TAB 页
,当点击另外一个页时,需要判断当前页是否允许切换
(例如当前页面的线程还没有结束,) 那么就不允许切换到其它页面。该怎么处理。

解决方案 »

  1.   

    两点:
    1. 取消切换
        getModel().clearSelection();2. 监视切换
        方法很多:
        1) 创建ChangeListener的实现类,实现
             void stateChanged(ChangeEvent e)      2) 继承JTabbedPane,实现fireStateChanged()
      

  2.   

    getModel().clearSelection();  是取消切换了,但当前的页面也没有了
      

  3.   

    不好意思,我的测试程序在处理上有点错误。你现在这么做试试:    protected void fireStateChanged(){
            int id = getSelectedIndex();        // 当id==0的时候,屏蔽执行父类的fireStateChanged()
            // 从而阻止TabPage的切换。
            if (id != 0) {
                super.fireStateChanged();
            }
        }