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