isVisible()是否保证UI对象在JAVA中的可见性
这是一个一般性的问题。如果我添加一些UI对象,比如JButton等,并检查isVisible属性,它将返回true。但是,它是否保证对象实际渲染并在显示器上正确可见?如果没有,是否有更好的方法来检查相同内容?否isVisible()是否保证UI对象在JAVA中的可见性,java,swing,rendering,jbutton,visibility,Java,Swing,Rendering,Jbutton,Visibility,这是一个一般性的问题。如果我添加一些UI对象,比如JButton等,并检查isVisible属性,它将返回true。但是,它是否保证对象实际渲染并在显示器上正确可见?如果没有,是否有更好的方法来检查相同内容?否isVisible()只是对该组件本身的提示。它是否对用户真正可见取决于组件的父层次结构。这可以通过组件继承的isShowing()来最好地验证,它检查组件及其所有父组件的isVisible()和isDisplayable()。但是正如javadoc所提到的,即使这样也不能保证组件对用户是
isVisible()
只是对该组件本身的提示。它是否对用户真正可见取决于组件的父层次结构。这可以通过组件继承的isShowing()
来最好地验证,它检查组件及其所有父组件的isVisible()
和isDisplayable()
。但是正如javadoc所提到的,即使这样也不能保证组件对用户是真正可见的:
注意:有时无法检测组件是否对用户实际可见。这可能发生在以下情况:
- 该组件已添加到可见滚动窗格中,但该组件当前不在滚动窗格的查看端口中
- 组件被另一个组件或容器遮挡
isVisible仅返回当前组件的标志值。它不能确保您的组件是可见组件层次结构的一部分。您更应该看看
isShowing()