出現了一些問題。Panel.add不立即?
構建了一個必須逐步使用的小程序。每一步之後,點擊一個按鈕,下一步應該添加到GUI中。
問題:沒有縮放,添加的內容不可見。在一個應用程序中,您可以通過縮放窗口大小來解決問題,但是在一個小程序中,我無法解決這個問題。
感謝
編輯:
實際上,它看起來水木清華這樣的:
Panel cp = new Panel(new GridLayout(0,2));
Panel Block1 = new Panel(new GridLayout(2,2));
Panel Block1 = new Panel(new GridLayout(2,2));
...
初始化
public void init()
{
buildBlock1();
buildBlock2();
add(cp);
cp.setVisible(true);
}
這裏加入一些空板,那些誰就會得到事後填寫
private void buildBlock1()
{
Block1.add(panel1);
Block1.add(panel2);
Block1.add(panel3);
Block1.add(panel4);
cp.add(Block1);
}
按鈕的ActionListener
private void generatePanel1()
{
//adding some Components to the subpanel of Block1, which is a subpanel of cp.
Panel1.add(...);
cp.repaint();
cp.validate();
}
你能提供一些代碼嗎?這將有助於一個小而完整的例子。 – dacwe
你在按下按鈕後調用'repaint()'嗎?聽起來像這可能是你的問題。 – purtip31
實際上我甚至不使用paint()方法,只是將我的應用程序轉換爲aplet。這是否需要? 更新:甚至沒有重繪()它更新得很好 – roqstr