删除JInternalFrame默认标题栏

时间:2014-03-14 08:01:57

标签: java swing jinternalframe

我正在尝试删除JInternalFrame的标题栏,我试过了。

void remove_title_bar(){
        putClientProperty("JInternalFrame.isPalette", Boolean.TRUE);
        getRootPane().setWindowDecorationStyle(JRootPane.NONE);
    BasicInternalFrameTitlePane titlePane =  
            (BasicInternalFrameTitlePane) ((BasicInternalFrameUI) this.getUI()).  
            getNorthPane();
        this.remove(titlePane);
        this.setBorder(null);
        //this.setUI(null); doesn't work either
    }

它不会删除标题栏,它会清除它,我的意思是我看到标题栏为空白(顶部有一个白色矩形)。
我该如何删除它?

1 个答案:

答案 0 :(得分:3)

我找到了这段代码,是的,它起作用了(至少对我而言) 请告诉我这是不是一个好方法。

    void remove_title_bar(){
        putClientProperty("JInternalFrame.isPalette", Boolean.TRUE);
        getRootPane().setWindowDecorationStyle(JRootPane.NONE);
        ((BasicInternalFrameUI) this.getUI()).setNorthPane(null);
        this.setBorder(null);
    }