JDesktopPane在linux的窗口底部有一个工具栏

时间:2012-04-27 19:30:00

标签: java swing jinternalframe jdesktoppane

我有一个添加JInternalFrames的JDesktopPane。在Linux(ubuntu)和Mac OS上,所有显示的内部框架都显示在左下角的任务栏/工具栏中,每个内部框架的名称都作为标签。 Windows上不显示此工具栏,这是我期望的行为。

enter image description here

有人知道如何停用此工具栏吗?

我正在以这种方式设置内部框架:

frame.setResizable(false);
frame.setClosable(false);
frame.setMaximizable(false);
frame.setIconifiable(false);

并将其添加到JLayeredPane.PALETTE_LAYER

4 个答案:

答案 0 :(得分:3)

试试这个:

UIManager.put("DesktopPaneUI","javax.swing.plaf.basic.BasicDesktopPaneUI");

答案 1 :(得分:2)

创建JDesktopPanes后,请尝试removeAll()

答案 2 :(得分:0)

尝试添加:

frame.setIcon ( false );

这将强制显示帧。

在Ubuntu / Mac上,这些帧可能默认为图标化,这就是它们出现在JDesktopPane角落的原因。

答案 3 :(得分:0)

这适用于我的情况:

UIManager.put("InternalFrame.useTaskBar", Boolean.FALSE); 

应该是"侵入性较小"而不是替换整个UI类,如果您更改为不显示工具栏的外观,则应该忽略该属性