-1

JPanelがインスタンス化されて可視に追加されたらJFrame、どのように新しいを追加し、表示更新しJComponentてその新しいを表示するのですか?JComponent

元の質問:

JComponentに追加したJPanelJPanelに追加する方法JFrameJPanelを拡張し、おそらくオーバーライドする必要があると思いますpaintComponent()

4

2 に答える 2

4

JPanel.add()正常に動作するはずです。フレームが既に表示されている場合は、次を呼び出します。

validate();
repaint();

また、サイズやレイアウトによってはフレームの詰め直しが必要な場合がありますpack()

質問とともにSSCCEを投稿していただけるとより簡単です。

于 2012-08-04T18:34:41.017 に答える
1

あなたの質問を理解しているかどうかわかりませんが、 a に追加する前または後にJComponenta に何かを追加しても問題はないはずです:JPanelJFrame

JPanel panel = new JPanel();
frame.setContentPane(panel);
// sometime later
panel.add(new JLabel("JLabel is a JComponent")); 

コードを投稿すると、質問がより明確になるかもしれません。

于 2012-08-04T18:32:02.157 に答える