什么时候需要在swing组件上调用revalidate()以使其刷新,何时不需要?

Dat*_*aki 14 java validation swing invalidation

在处理swing组件时,以及在运行时更改组件时,一个(通常)需要在组件上调用revalidate()方法以便刷新它们.

确定是否需要重新验证组件的规则是什么?当某个组件上的某些特性发生变化时,swing会自动调用revalidate()吗?

kle*_*tra 10

基本规则是:从不 - 摇摆内部会照顾它.规则的基本例外是在运行时添加/删除组件或者以系统无法知道或由于某种原因不想对其做出反应的方式影响布局的更改.

虽然异常并不十分清楚,但"正常"应用程序开发中的频率是:如果需要"经常"调用它,那么代码很可能出现问题,而自定义模型实现则没有通知其监听器.