0

I have a JDesktopPane that adds JInternalFrames. On Linux (ubuntu) and Mac os, all displayed internal frame appear in a taskbar/toolbar standing in the bottom left corner, with the name of each internal frame as label. This toolbar is not displayed on Windows, which is the behaviour I expect.

enter image description here

Would anybody know how to desactivate this toolbar?

I'm setting the internal frames this way:

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

And adding them to JLayeredPane.PALETTE_LAYER

mKorbel
  • 109,525
  • 20
  • 134
  • 319
Martin Pernollet
  • 2,285
  • 1
  • 28
  • 39

4 Answers4

3

Try this:

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

Try removeAll() on your JDesktopPanes after creating them.

pamo
  • 81
  • 1
  • 5
0

Try adding:

frame.setIcon ( false );

This will force the frame to be shown.

It is possible that on Ubuntu/Mac those frames are iconified by default, that is why they appear in the corner of the JDesktopPane.

Mikle Garin
  • 10,083
  • 37
  • 59
  • 1
    unfortunately it does not change anything, either when calling setIcon(false) before or after adding the internal frame to the desktop pane. – Martin Pernollet Apr 28 '12 at 07:55
0

This worked in my case:

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

It should be "less invasive" than replacing a whole UI class, and if you change to a Look and Feel that doesn't display the toolbar the property should be simply ignored

rizac
  • 61
  • 1
  • 4