强制完整重画Jpanel Java2D
我的问题是,我需要制作一个不断更新的GUI,因为我得到的值可以从DB中更改,并且我在图形区域遇到了一些问题 我使用Graphics2D中的Drawline和Drawstring打印数据库中的值,这些字符串和线条移动并更改值,所以我需要调用repaint();使用计时器使它们出现在jpanel中,问题在于重新绘制();不是在绘制之前移除背景中的旧绘制,而是在我完全调整所有更新的大小时 我知道一种清除的方法但是背景颜色也消失了所以, 有没有办法更新jpanel删除旧画并保留deafult背景色 未更新 将坐标和标签文本更改为“Y轴”后(从计时器自动调用重新绘制)强制完整重画Jpanel Java2D,java,swing,awt,graphics2d,java-2d,Java,Swing,Awt,Graphics2d,Java 2d,我的问题是,我需要制作一个不断更新的GUI,因为我得到的值可以从DB中更改,并且我在图形区域遇到了一些问题 我使用Graphics2D中的Drawline和Drawstring打印数据库中的值,这些字符串和线条移动并更改值,所以我需要调用repaint();使用计时器使它们出现在jpanel中,问题在于重新绘制();不是在绘制之前移除背景中的旧绘制,而是在我完全调整所有更新的大小时 我知道一种清除的方法但是背景颜色也消失了所以, 有没有办法更新jpanel删除旧画并保留deafult背景色 未更
谢谢。从图像的外观来看,您似乎忘记了在
paintComponent
方法中调用super.paintComponent
。这样做的目的是为您重新绘制背景,因此不会留下以前的绘制工件
@Override
protected voud paintComponent(Graphics g) {
super.paintComponent(g);
}
注意:为了将来的参考,虽然这些图片给了我们一个很好的图片,但最好是与这些图片一起发布,这样我们就不必猜测(是否受过教育)看起来你忘记调用
super.paintComponent
。为了获得更好的帮助,@peeskillet您的评论应该是一个答案。我同意你的看法。是的,@peeskillet说的是事实。更重要的是,如果没有代码,我们如何确定您做错了什么?您可以大大改进这个问题。@karlphillip没有看到一些代码,这只是一个有根据的猜测,请考虑提供一个演示您的问题的示例。这将减少混乱和更好的响应