java invalidate_Swing GUI中validate(),revalidate()和invalidate()

java invalidate_Swing GUI中validate(),revalidate()和invalidate()invalidate()将容器标记为无效。意味着内容在某种程度上是错误的,必须重新布局。但它只是一种标志/旗帜。有可能以后必须刷新多个无效容器。validate()执行重新布局。这意味着要求所有大小的无效内容,并且LayoutManager将所有子组件的大小设置为正确的值。revalidate()只是两者的总和。它将容器标记为无效并执行容器的布局。更新:Component.java中的一些代码pu…

大家好,欢迎来到IT知识分享网。java invalidate_Swing GUI中validate(),revalidate()和invalidate()

invalidate()将容器标记为无效。意味着内容在某种程度上是错误的,必须重新布局。但它只是一种标志/旗帜。有可能以后必须刷新多个无效容器。

validate()执行重新布局。这意味着要求所有大小的无效内容,并且LayoutManager将所有子组件的大小设置为正确的值。

revalidate()只是两者的总和。它将容器标记为无效并执行容器的布局。

更新:

Component.java中的一些代码

public void revalidate() {

revalidateSynchronously();

}

/**

* Revalidates the component synchronously.

*/

final void revalidateSynchronously() {

synchronized (getTreeLock()) {

invalidate();

Container root = getContainer();

if (root == null) {

// There’s no parents. Just validate itself.

validate();

} else {

while (!root.isValidateRoot()) {

if (root.getContainer() == null) {

// If there’s no validate roots, we’ll validate the

// topmost container

break;

}

root = root.getContainer();

}

root.validate();

}

}

}

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/11228.html

(0)
上一篇 2024-03-24 14:45
下一篇 2024-03-24 20:26

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信