gpt4 book ai didi

java - JFrame setVisible(false) 和 setState(Frame.ICONIFIED) 的区别

转载 作者:行者123 更新时间:2023-11-30 08:20:39 25 4
gpt4 key购买 nike

在Swing中,我们可以使用两种方法隐藏JFrame:

  1. frame.setVisible(false)
  2. frame.setState(Frame.ICONIFIED)

我发现的区别是:

  1. frame.setVisible(false) 从任务栏中移除图标,而 ICONIFIED 则不会。
  2. 我们可以为 ICONIFIED 添加监听器,但不能为 frame.setVisible(false) 添加监听器。

我还缺少其他主要区别吗?任何想法将不胜感激。

最佳答案

使用 setVisible(false) 时,如果组件尚未标记为不可见,setVisible 会调用 invalidate() 使容器的布局和父链无效,因为容器和位置中现在有更多的屏幕空间必须调整 sibling 的数量以流入释放的空间。

API of Component .

但是 ICONFIED 正在执行窗口的最小化过程。

关于java - JFrame setVisible(false) 和 setState(Frame.ICONIFIED) 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25887915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com