Javaは、かなり前から業界に存在しています。 Webアプリケーション、モバイルアプリケーション、組み込みシステムなど、プログラミングの世界のさまざまな領域に深く根ざしています。 GUIプログラミングについて話しても、 AWTAPIにラップされた高度にインタラクティブなGUIを開発するための豊富なライブラリセットを提供します。このJavaAWTチュートリアルでは、そのコンポーネントと一緒に簡単に紹介します。
以下は、このJavaAWTチュートリアルでカバーされているトピックです。
始めましょう。
JavaのAWTとは何ですか?
AWTの頭字語であるAbstractWindow Toolkitは、のツールキット クラス プログラマーがグラフィックスおよびグラフィカルユーザーインターフェイスコンポーネントを開発するのに役立つJavaで。これは、Sun Microsystemsによって開発されたJFC(Java Foundation Classes)の一部です。 JavaのAWTAPIは、主に、グラフィカルユーザーインターフェイス(GUI)を簡略化して作成および管理するために必要なクラスとメソッドの包括的なセットで構成されています。これは、クロスプラットフォームGUIを設計するための共通のツールセットを提供するために開発されました。 AWTの重要な機能の1つは、プラットフォームに依存することです。これは、AWTツールが実装されているプラットフォームのネイティブツールキットを使用することを意味します。このアプローチは各プラットフォームのルックアンドフィールを維持します。しかし、すべてに代償が伴うと述べたように、このアプローチには大きな欠点があります。プラットフォームの依存関係のためにさまざまなプラットフォームで実行すると、プラットフォームごとに異なって見えます。これは、アプリケーションの一貫性と美学を妨げます。
プラットフォームに依存することとは別に、このJavaAWTチュートリアルの次のセクションで説明するAWTクラスの機能がいくつかあります。
JavaでのAWTの機能
- AWTはネイティブユーザーのセットです インターフェース コンポーネント
- これは、堅牢なイベント処理モデルに基づいています
- 形状、色、フォントクラスなどのグラフィックスおよびイメージングツールを提供します
- AWTは、ウィンドウレイアウトの柔軟性を高めるのに役立つレイアウトマネージャーも利用できます。
- データ転送クラスもAWTの一部であり、ネイティブプラットフォームクリップボードを介したカットアンドペーストに役立ちます
- 作成に必要な幅広いライブラリをサポートゲーム製品、銀行サービス、教育目的などのグラフィック。
AWTのさまざまな機能を理解したところで、このJavaAWTチュートリアルの次のセクションでGUIの側面を紹介します。
AWTUIの側面
UIは、次の3つのエンティティで構成されます。
- UI要素 :これらは、ユーザーに表示され、アプリケーションとの対話に使用されるコア視覚要素を指します。 JavaのAWTは、広く使用されている一般的な要素の包括的なリストを提供します。
- レイアウト :これらは、UI要素が画面上でどのように編成されるかを定義し、GUIに最終的なルックアンドフィールを提供します。
- 動作 :これらは、ユーザーがUI要素を操作するときに発生するイベントを定義します。
私これで、AWTと、任意のアプリケーションでのAWTの役割について簡単に理解できたと思います。このJavaAWTチュートリアルの次のセクションでは、完全なAWT階層に光を当てます。
セレンwebdrivertestngフレームワークの例
AWTの階層
上の図でわかるように、ComponentはすべてのGUIコントロールのスーパークラスです。それは抽象クラスですビジュアルコンポーネントのすべての属性をカプセル化し、グラフィック表現でオブジェクトを表します。コンポーネントクラスインスタンスは、基本的に現在のインターフェイスのルックアンドフィールを担当します。
以下に、の一般的なクラスの説明を示します。java.awt.Component:
public abstract class Component extends Objectimplements ImageObserver、MenuContainer、Serializable {// class body}
AWTコンポーネント
1.コンテナ
Java AWTのコンテナは、テキストフィールド、ボタンなどの他のコンポーネントを保持するために使用されるコンポーネントです。これは、のサブクラスです。java.awt.Componentであり、追加されているコンポーネントを追跡する役割を果たします。JavaでAWTによって提供されるコンテナには4つのタイプがあります。
コンテナの種類
- 窓 :これは、境界線もタイトルもないWindowクラスのインスタンスです。作成に使用されますトップレベルウィンドウ。
- フレーム :フレームはウィンドウのサブクラスであり、タイトル、境界線、メニューバーが含まれています。サイズ変更キャンバスが付属しており、AWTアプリケーションの開発に最も広く使用されているコンテナーです。ボタン、テキストフィールド、スクロールバーなどのさまざまなコンポーネントを保持できます。JavaAWTフレームは次の2つの方法で作成できます。
- フレームクラスをインスタンス化する
- フレームクラスを拡張する
- ダイアログ: ダイアログクラスもWindowのサブクラスであり、タイトルだけでなく境界線も付属しています。ダイアログクラスのインスタンスには、関連するフレームクラスインスタンスが常に存在する必要があります。
- パネル :パネルはコンテナの具体的なサブクラスであり、タイトルバー、メニューバー、境界線は含まれていません。 Panelクラスは、GUIコンポーネントを保持するための汎用コンテナです。コンポーネントを追加するには、Panelクラスのインスタンスが必要です。
コンテナとそのタイプについては以上です。このJavaAWTチュートリアルの記事をさらに進めて、残りのコンポーネントについて学びましょう。
2.ボタン
java.awt.Buttonクラスは、ラベル付きボタンを作成するために使用されます。特定のプログラムされたものをトリガーするGUIコンポーネント アクション それをクリックすると。 Buttonクラスには2つあります コンストラクター :
//指定されたラベルでボタンを作成しますpublicButton(String btnLabel)//空のラベルでボタンを作成しますpublic Button()
このクラスによって提供されるメソッドのいくつかを以下に示します。
//このButtonインスタンスのラベルを取得しますpublicString getLabel()//このButtonインスタンスのラベルを設定しますpublic void setLabel(String btnLabel)//このButtonを有効または無効にします。無効なボタンはクリックできませんpublicvoid setEnable(boolean enable)
3.テキストフィールド
にjava.awt.TextFieldクラスは、ユーザーがテキストを入力するための1行のテキストボックスを作成します。 TextFieldクラスには、次の3つのコンストラクターがあります。
//列数の指定された初期テキスト文字列を使用してTextFieldインスタンスを構築します。 public TextField(String initialText、int columns)//指定された初期テキスト文字列を使用してTextFieldインスタンスを構築します。 public TextField(String initialText)//列数を使用してTextFieldインスタンスを作成します。 public TextField(int columns)
TextFieldクラスによって提供されるメソッドのいくつかは次のとおりです。
//このTextFieldインスタンスの現在のテキストを取得しますpublicString getText()//このTextFieldインスタンスの表示テキストを設定しますpublic void setText(String strText)//このTextFieldを編集可能(読み取り/書き込み)または編集不可(読み取り)に設定します-のみ)public void setEditable(boolean editable)
4.ラベル
java.awt.Labelクラスは、GUIに表示される説明テキスト文字列を提供します。 AWT Labelオブジェクトは、コンテナにテキストを配置するためのコンポーネントです。ラベルクラスには3つあります コンストラクター これは:
//指定されたテキスト文字列を使用してテキスト配置のラベルを作成しますpublicLabel(String strLabel、int align)//指定されたテキスト文字列を使用してラベルを作成しますpublic Label(String strLabel)//最初は空のラベルを作成しますpublic Label( )
このクラスは、次の3つの定数も提供します。
public static final LEFT // Label.LEFT public static final RIGHT // Label.RIGHT public static final CENTER // Label.CENTER
以下に、このクラスによって提供されるパブリックメソッドをリストしました。
Java開発に最適なアイデア
public String getText()public void setText(String strLabel)public int getAlignment()// Label.LEFT、Label.RIGHT、Label.CENTER public void setAlignment(int align)
5.キャンバス
Canvasクラスは、アプリケーションで描画したり、ユーザーが作成した入力を受け取ったりできる長方形の領域を表します。
6.選択
選択クラスは、選択のポップアップメニューを表すために使用されます。選択した選択肢が、指定されたメニューの上部に表示されます。
7.スクロールバー
Scrollbarクラスオブジェクトは、GUIに水平および垂直スクロールバーを追加するために使用されます。これにより、ユーザーは目に見えない数の行と列を確認できます。
8.リスト
Listクラスのオブジェクトは、テキストアイテムのリストを表します。を使用して クラスユーザーは、1つのアイテムまたは複数のアイテムのいずれかを選択できます。
9.チェックボックス
チェックボックスは、チェックボックスを作成するために使用されるグラフィカルコンポーネントであるクラスです。 trueとfalseの2つの状態オプションがあります。いつでも、2つのいずれかを持つことができます。
つまり、AWTコンポーネントについて知る必要があるのはそれだけです。これで、JavaAWTアプリケーションで足を濡らす準備ができていることを願っています。
このJavaAWTチュートリアルの次のセクションでは、AWTコンポーネントを使用して計算機を構築する方法を示します。
JavaAWTを使用した電卓の開発
ここでは、AWTを使用して計算機を作成する方法を紹介します。ここでは、基本的な数学演算を実行できます。以下は、電卓がどのように表示されるかのスクリーンショットです。
これをビルドするには、次のコードを入力する必要があります。
パッケージedureka.awtimportjava.awt。* import java.awt.event.ActionEvent import java.awt.event.ActionListener class Calculator extends Frameimplements ActionListener {Label lb1、lb2、lb3 TextField txt1、txt2、txt3 Button btn1、btn2、 btn3、btn4、btn5、btn6、btn7 public Calculator(){lb1 = new Label( 'Var 1')lb2 = new Label( 'Var 2')lb3 = new Label( 'Result')txt1 = new TextField(10) txt2 = new TextField(10)txt3 = new TextField(10)btn1 = new Button( 'Add')btn2 = new Button( 'Sub')btn3 = new Button( 'Multi')btn4 = new Button( 'Div') btn5 = new Button( 'Mod')btn6 = new Button( 'Reset')btn7 = new Button( 'Close')add(lb1)add(txt1)add(lb2)add(txt2)add(lb3)add(txt3 )add(btn1)add(btn2)add(btn3)add(btn4)add(btn5)add(btn6)add(btn7)setSize(200,200)setTitle( 'Calculator')setLayout(new FlowLayout())// setLayout( new FlowLayout(FlowLayout.RIGHT))// setLayout(new FlowLayout(FlowLayout.LEFT))btn1.addActionListener(this)btn2.addActionListener(this)btn3.addActionListener(this)btn4.addActionListen er(this)btn5.addActionListener(this)btn6.addActionListener(this)btn7.addActionListener(this)} public void actionPerformed(ActionEvent ae){double a = 0、b = 0、c = 0 try {a = Double.parseDouble (txt1.getText())} catch(NumberFormatException e){txt1.setText( 'Invalid input')} try {b = Double.parseDouble(txt2.getText())} catch(NumberFormatException e){txt2.setText( '無効な入力 ')} if(ae.getSource()== btn1){c = a + b txt3.setText(String.valueOf(c))} if(ae.getSource()== btn2){c = a- b txt3.setText(String.valueOf(c))} if(ae.getSource()== btn3){c = a * b txt3.setText(String.valueOf(c))} if(ae.getSource()= = btn4){c = a / b txt3.setText(String.valueOf(c))} if(ae.getSource()== btn5){c = a%b txt3.setText(String.valueOf(c))} if(ae.getSource()== btn6){txt1.setText( '0')txt2.setText( '0')txt3.setText( '0')} if(ae.getSource()== btn7){システム.exit(0)}} public static void main(String [] args){Calculator calC = new Calculator()calC.setVisible(true)calC.setLocation(300,300)}}
お気づきかもしれませんが、ここでは機能だけを使用しています。いつでもアプリケーションに関数を追加して、本格的な電卓を作成できます。
これで、このJavaAWTチュートリアルは終了です。Javaについて詳しく知りたい場合は、 。
Java AWTチュートリアルとは何かを理解したので、 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 EdurekaのJavaJ2EEおよびSOAトレーニングおよび認定コースは、Java開発者になりたい学生および専門家向けに設計されています。このコースは、Javaプログラミングをすぐに開始できるように設計されており、HibernateやSpringなどのさまざまなJavaフレームワークに加えて、コアと高度なJavaの両方の概念についてトレーニングします。
質問がありますか?この「JavaAWTチュートリアル」記事のコメントセクションでそれについて言及してください。できるだけ早くご連絡いたします。