Java 尝试在不同的JPanel上重新绘制

Java 尝试在不同的JPanel上重新绘制,java,swing,jframe,jpanel,jlabel,Java,Swing,Jframe,Jpanel,Jlabel,我有一个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); fra

我有一个
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();
我知道,我没有在
JPanel
上使用
repaint()
,。。。在这方面也有帮助。。我用这个做的工作很少

我们可以在特定的
JPanel
上重新绘制()吗?

JFrame\repaint
将重新绘制整个框架及其内容

JPanel#repaint
将重新绘制面板及其子对象的实例

这将适用于所有组件,因为它们从
组件继承
重新绘制

JFrame\repaint
将重新绘制整个框架及其内容

JPanel#repaint
将重新绘制面板及其子对象的实例


这将适用于所有组件,因为它们从
组件继承了
重新绘制
。。但是我有两个不同的面板,并且在两个不同的面板中绘制不同的东西…因为我们只有一个repaint()函数…每个面板都有一个repaint方法。如果你想在一个面板上画画,我建议你看一下“谢谢”…我想这个链接应该对我有帮助。@MadProgrammer。。。哇,那个链接真的很有用。不知道,我是多么想念它。@JS_VIPER有些日子,我觉得我住在那里;)是 啊但是我有两个不同的面板,并且在两个不同的面板中绘制不同的东西…因为我们只有一个repaint()函数…每个面板都有一个repaint方法。如果你想在一个面板上画画,我建议你看一下“谢谢”…我想这个链接应该对我有帮助。@MadProgrammer。。。哇,那个链接真的很有用。不知道,我是多么想念它。@JS_VIPER有些日子,我觉得我住在那里;)<代码>Jpanel面板=新Jpanel()。为了更快地获得更好的帮助,请发布一个。不要使用
setSize
而是覆盖
JPanel
getPreferredSize()
并返回
维度,该维度适合绘制到
图形
s对象的内容。
JPanel panel=new JPanel()。为了更快地获得更好的帮助,发布一个。不要使用
setSize
而是覆盖
JPanel
getPreferredSize()
并返回适合绘制到
图形对象的内容的
维度。