2013-11-13 6 views
1

Я пытаюсь установить строку заголовка JInternalFrame с помощью setTitle(), но это не изменяется. Я не знаю, что я делаю неправильно? Я отлично работаю, если я инициализирую его в конструкторе, но после его установки он не изменяется.Как установить заголовок JInternalFrame?

Вот мой код:

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

это результат я получаю.

enter image description here

+1

Для лучше помогите раньше, опубликуйте [SSCCE] (http://sscce.org/). –

ответ

2

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

+0

Эта ошибка ДЕЙСТВИТЕЛЬНО старая. Я не могу себе представить, что OP использует JDK 1.2 – splungebob

0

Это работает для меня:

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); 
    } 
} 
Смежные вопросы