出现了一些问题。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