Swing は、Java アプリケーション ユーザー インターフェイスを開発するための開発ツールキット (GUI ツールキット) です。これは Java 基本クラスの一部であり、次のようなグラフィカル ユーザー インターフェイス (GUI) デバイスが含まれています。テキスト ボックス、ボタン、分割ペイン、テーブル。
Swing は、AWT よりも多くの優れた画面表示要素を提供します。これらは純粋な Java で書かれているため、AWT とは異なり、Java 自体と同様にクロスプラットフォームで実行できます。彼らはJFCの一員です。これらは、交換可能なパネルとテーマ (さまざまなオペレーティング システムのデフォルトの特定のテーマ) をサポートしますが、ネイティブ プラットフォームによって提供されるデバイスを実際には使用せず、表面的に模倣するだけです。これは、JAVA でサポートされているパネルをどのプラットフォームでも使用できることを意味します。軽量コンポーネントの欠点は、実行が遅いことですが、利点は、すべてのプラットフォームで均一な動作を採用できることです。
Swing クラス ライブラリの構造
Swing コンポーネントはすべて、MVC (Model-View-Controller、モデル-ビュー-コントローラー) 設計を採用し、GUI コンポーネントの表示を実現します。ロジックとデータ ロジックが分離されているため、プログラマは Render をカスタマイズして GUI コンポーネントの表示外観を変更し、柔軟性を高めることができます。
Swing は、AWT コンテナ クラスから拡張された JComponent コンポーネントを中心に構築されています。
Swing クラス ライブラリの組織図:
#AbstmctButton クラスを除く Swing コンポーネントはすべて J で始まることがわかります。 Swing コンテナ コンポーネントは AWT クラス ライブラリのコンテナ コンポーネント クラスを直接継承し、他のほとんどのコンポーネントは JComponet コンポーネントを継承します。コンポーネントはコンテナ コンポーネントと非コンテナ コンポーネントに分けられ、コンテナ コンポーネントには JFmme と JDialog が含まれます。このうち、JComponent は非コンテナクラス (JBntton、JPanel、JMenu など) の軽量コンポーネントを定義します。
Swing パッケージ
Swing クラス ライブラリは多くのパッケージで構成されており、GUI の設計はこれらのパッケージ内のクラスによって完成します。その中で、javax.swing パッケージは Swing が提供する最大のパッケージであり、100 近くのクラスと 25 のインターフェイスが含まれています。ほぼすべての Swing コンポーネントがこのパッケージに含まれています。表 1 に、一般的に使用される Swing パッケージを示します。
説明 | |
---|---|
すべてのプラットフォームで同じように動作する一連の「軽量」コンポーネントを提供します | |
描画用のクラスとインターフェイスを提供しますSwing コンポーネントの周囲の特別な境界線 | ##javax.swing.event |
##javax.swing。 filechooser | JFileChooser コンポーネントで使用されるクラスとインターフェイスを提供します |
javax.swing.table | Javax を処理するためのクラスとインターフェイスを提供します。 Swing.JTable の |
#javax.swing.text | クラス HTMLEditorKit と、HTML テキスト エディターを作成するためのサポート クラスを提供します |
javax.swing.tree | javax.swingJTree |
を処理するためのクラスとインターフェイスを提供します。 javax.swing.event パッケージは、イベントとイベント リスナー クラスを定義します。javax.swing.event パッケージは、AWT イベント パッケージに似ています。 Java.awt.event と javax.swing.event には、それぞれ AWT コンポーネントと Swing コンポーネントによってトリガーされたイベントに応答するイベント クラスとリスナー インターフェイスが含まれています。 Swing コンテナ グラフィカル ユーザー インターフェイス プログラム作成の最初のステップは、他のコンポーネントに対応するコンテナ クラスを作成することです。共通ウィンドウはコンテナです。コンテナ自体もコンポーネントであり、その役割は他のコンポーネントを整理、管理、表示することです。 Swing のコンテナは、トップレベル コンテナと中間コンテナの 2 つのカテゴリに分類できます。 トップレベル コンテナはグラフィック プログラミングの基礎です。すべてのグラフィカルなものはトップレベル コンテナに含める必要があります。トップレベルのコンテナは、グラフィカル インターフェイス プログラムに関係するメイン ウィンドウであり、コンポーネントを表示およびホストするコンテナ コンポーネントです。 Swing で使用できるトップレベルのコンテナーは、JFrame、JDialog、JApplet の 3 つです。 ##● JFrame: 枠線、タイトル、ウィンドウを閉じたり最小化したりするためのアイコンを備えたフレーム ウィンドウに使用されるクラス。 GUI を備えたアプリケーションは、少なくとも 1 つのフレーム ウィンドウを使用します。##● JDialog: ダイアログボックスに使用されるクラス。 ##● JApplet: Swing コンポーネントを使用するための Java Applet クラス。 中間コンテナはコンテナ コンポーネントの一種であり、他のコンポーネントをホストすることもできますが、中間コンテナは独立して表示できないため、他の最上位コンテナにアタッチする必要があります。一般的な中間コンテナには、JPanel、JScrollPane、JTabbedPane、JToolBar などがあります。 # JPanel: 通常のパネルを表し、最も柔軟で一般的に使用される中間コンテナです。##● JScrollPane: JPanel に似ていますが、大きなコンポーネントや展開可能なコンポーネントの周囲にスクロール バーを提供します。 ##● JTabbedPane: 複数のコンポーネントを含めることができるタブ付きパネルを表しますが、一度に表示されるコンポーネントは 1 つだけです。ユーザーはコンポーネント間を簡単に切り替えることができます。##● JToolBar: 行または列に配置された一連のコンポーネント (通常はボタン) であるツールバーを表します。 Java プログラムのコンテナ クラスはすべて Container クラスを継承します。図 (コンテナ クラスの組織図) に示すように、中間コンテナと最上位コンテナは、AWT パッケージと Swing パッケージのコンテナ クラスの継承関係を継承します。 ## 推奨される学習: Java ビデオ チュートリアル |
以上がJavaスイングとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。