我有JFrame
,其中我有两个JPanel
个实例。
我使用repaint()
来绘制框架。但问题是我想为两个不同的面板提供两个不同的repaint()
。
Jpanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
panel.add(image1); //image1 and image2 is of its own class type.
panel.add(image2);
frame.add(panel,BorderLayout.CENTER);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize((int)width*2, (int)height);
frame.setVisible(true);
frame.repaint();
我知道,我还没有在repaint()
上使用JPanel
,...也帮助了......我使用它的工作量很小。
我们可以repaint()
只针对特定的JPanel
吗?
答案 0 :(得分:3)
JFrame#repaint
将重新绘制整个框架及其内容。
JPanel#repaint
将重新绘制面板的实例,并且它是孩子。
这将适用于所有组件,因为它们从repaint
Component