0

在该java.awt.Component方法的 java 文档中getComponentAt描述它可以返回一个组件或一个子组件。

什么是子组件?有没有办法从组件中检索所有子组件?

这里提到的子组件:http: //docs.oracle.com/javase/7/docs/api/java/awt/Component.html

4

1 回答 1

2

awt用作可以包含其他组件Container的特殊类。Component所以调用所有组件的枚举Container.getComponents()。为什么他们决定在Component类而不是Container类中访问子组件,我不知道,但就是这样。也许原因是getComponentAt,如果该位置没有子组件,并且它实际上包含给定的位置,它也会返回调用该方法的组件。

因此要查找所有子组件,请检查该组件是否为容器。如果不是,则它不能有子组件。如果是,则投射Container并访问它们。如果您还需要子子组件,请递归。

于 2012-07-11T15:39:04.947 回答