• 締切済み

Java AWTのコンポーネントについて

JavaのAWTで軽量コンポーネントと重量コンポーネント、軽量コンテナ・重量コンテナとありますが、 それぞれどのようなものでしょうか? ネイティブのピアを持つもの持たないものなどの違いがあると思いますが、 具体的にどのクラスはピアを持っていて、どのクラスはピアを持っていないのかを 簡単にわかる方法はないでしょうか? 書籍やネットでは「ComponentやContainerを直接拡張したクラス」は軽量とあるのですが、 「直接拡張したクラス」は継承とは別のようなので、理解に困っております。 PanelやCanvasは重量コンポーネントという記述はみつけたのですが、 Panelなどがなんで重量なのかがわからないです。 理解できていないので、わかりづらい質問になってしまい恐縮ですが、 詳しい方いましたら教えて頂けないでしょうか。

みんなの回答

  • myuki1232
  • ベストアンサー率57% (97/170)
回答No.1

軽量コンポーネントかどうかは isLightweight() メソッドでわかります。 重量か軽量かはネイティブへのピアを持つかどうかで呼び分けているようです。 「直接拡張したクラス」などという表現をどこで見たのか知りませんが、継承のことでしょう。

すると、全ての回答が全文表示されます。

関連するQ&A