Java JPanel覆盖重新验证日期()

Java JPanel覆盖重新验证日期(),java,swing,jpanel,jlabel,Java,Swing,Jpanel,Jlabel,对于我的程序,我有一个JPane,随着游戏的进行,它会将标签添加到面板上,但是我能让面板显示出来的唯一方法是使用add(label)然后重新验证,反之亦然,删除标签 我的问题是,一旦屏幕上有40多个标签,重新验证就必须处理太多的事情,因此如何覆盖revalidate(),以太工作,这样它只能重新验证添加的特定组件,而不是屏幕上的每个组件。我知道revalidate()方法中的某个地方有一个循环,它将运行在所有组件的循环中,但我一生都找不到它。我希望能够调用revalidate(这里的组件)或va

对于我的程序,我有一个
JPane
,随着游戏的进行,它会将标签添加到面板上,但是我能让面板显示出来的唯一方法是使用
add(label)
然后重新验证,反之亦然,删除标签

我的问题是,一旦屏幕上有40多个标签,重新验证就必须处理太多的事情,因此如何覆盖
revalidate()
,以太工作,这样它只能重新验证添加的特定组件,而不是屏幕上的每个组件。我知道
revalidate()
方法中的某个地方有一个循环,它将运行在所有组件的循环中,但我一生都找不到它。我希望能够调用
revalidate(这里的组件)
validate(这里的组件)
,让它只更新特定的组件

我知道还有其他编写这个程序的方法,但我只对如何重写
revalidate()
感兴趣,所以没有“你可以用这种方式重做你的整个代码,只需要6个小时就可以了>我刚刚试过这个。添加1000个文本区域只需一秒钟,而且更新是即时的。标签的速度更快。你可能想看看别的东西来减缓它

此外,您还可以查看
CellRenderPane
。它重写
invalidate()
而不执行任何操作

public void invalidate() {}

validate()在容器类中。在我的游戏中,它是一个小行星游戏,所以我有很多标签四处移动、拍摄和垃圾。对不起,我只看过绘制形状的小行星游戏。