0
在java.awt.Component
的java文档中,方法getComponentAt
描述了它可以返回一个组件或一个子组件。awt中的子组件是什么,你可以检索它们吗?
什么是子组件? 有没有办法从组件中检索所有子组件?
子组件这里提到:http://docs.oracle.com/javase/7/docs/api/java/awt/Component.html
在java.awt.Component
的java文档中,方法getComponentAt
描述了它可以返回一个组件或一个子组件。awt中的子组件是什么,你可以检索它们吗?
什么是子组件? 有没有办法从组件中检索所有子组件?
子组件这里提到:http://docs.oracle.com/javase/7/docs/api/java/awt/Component.html
AWT采用Container
作为一类特殊的Component
可以含有其他成分。所以所有组件的枚举被称为Container.getComponents()
。为什么他们决定让Component
类的子组件访问而不是Container
类,我不知道,但事实就是这样。原因可能是getComponentAt
也会返回调用方法的组件,如果该位置没有子组件,并且它实际上包含给定的位置。
因此,要查找所有子组件,请检查组件是否是容器。如果不是,那么它就不能有子组件。如果是,则投到Container
并访问它们。如果您还需要子子组件,也可以调用。
它是由另一个组件持有的组件。您可以通过编写调用getComponents []的递归方法来获取所有组件/子组件。问题:为什么是AWT而不是Swing? – 2012-07-11 15:27:37
@HovercraftFullOfEels你不能在组件上调用getComponents,对吧?我正在使用AWT,因为我正在为使用AWT的在线小程序创建客户端。我无法访问小程序的代码。 – Tyilo 2012-07-11 15:30:14