Как да задам заглавие на JInternalFrame?

Опитвам се да настроя заглавната лента на JInternalFrame с setTitle(), но не се променя. Не знам какво правя погрешно? Работи добре, ако го инициализирам в конструктора, но след като е зададен, не се променя.

Ето моят код:

JInternalFrame internalFrame = new JInternalFrame("test",false, false, false, false);
internalFrame.setTitle("test2");

това е резултатът, който получавам.

въведете описание на изображението тук


person armin    schedule 13.11.2013    source източник
comment
За по-добра помощ по-рано, публикувайте SSCCE.   -  person Andrew Thompson    schedule 13.11.2013


Отговори (2)


JDK-4131008: JInternalFrame не се опреснява след промяна на заглавието, трябва да извикате repaint()

person AJ.    schedule 13.11.2013
comment
Този бъг е НАИСТИНА стар. Не мога да си представя, че OP използва JDK 1.2 - person splungebob; 13.11.2013

При мен работи:

import javax.swing.*;

public class JInternalFrameDemo implements Runnable
{
  public static void main(String[] args)
  {
    SwingUtilities.invokeLater(new JInternalFrameDemo());
  }

  public void run()
  {
    JInternalFrame iFrame = new JInternalFrame("Test 1",
                                               false, false, false, false);
    iFrame.setTitle("Test 2");
    iFrame.setSize(200, 150);
    iFrame.setLocation(10, 10);
    iFrame.setVisible(true);

    JDesktopPane desktop = new JDesktopPane();
    desktop.setOpaque(true);
    desktop.add(iFrame);

    JFrame frame = new JFrame("Demo");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(400, 300);
    frame.setContentPane(desktop);
    frame.setVisible(true);
  }
}
person splungebob    schedule 13.11.2013