Java Swing チュートリアル:Java で GUI アプリケーションを作成する方法
Java の Swing とは?
Swing in Java は、GUI コンポーネントを含むグラフィカル ユーザー インターフェイス (GUI) ツールキットです。 Swing は、Java アプリケーション用の洗練された GUI コンポーネントを作成するための豊富なウィジェットとパッケージのセットを提供します。 Swing は、GUI を提供する Java GUI プログラミング用の API である Java Foundation Classes (JFC) の一部です。
Java Swing ライブラリは、Java Abstract Widget Toolkit (AWT) の上に構築されています。 )、古いプラットフォーム依存の GUI ツールキットです。ボタン、テキストボックスなどの Java のシンプルな GUI プログラミング コンポーネントをライブラリから使用でき、最初からコンポーネントを作成する必要はありません。
この Java Swing チュートリアルでは、次のような Java GUI の基本を学びます-
- Swing in Java とは?
- コンテナ クラスとは
- Java の GUI とは?
- 例を使って Java で GUI を作成する方法
- Java レイアウト マネージャー
- Java BorderLayout
- Java FlowLayout
- Java GridBagLayout
Java Swing クラスの階層図
<センター>
<図>
センター>
Java Swing のすべてのコンポーネントは、コンテナ クラスに追加できる JComponent です。
コンテナ クラスとは
コンテナー クラスは、他のコンポーネントを持つことができるクラスです。したがって、Java Swing GUI を作成するには、少なくとも 1 つのコンテナー オブジェクトが必要です。 3 種類の Java Swing コンテナーがあります。
<オール>Java の GUI とは?
Java の GUI (グラフィカル ユーザー インターフェース) は、Java アプリケーション用の使いやすいビジュアル エクスペリエンス ビルダーです。主にボタン、ラベル、ウィンドウなどのグラフィカル コンポーネントで構成され、ユーザーはこれらを介してアプリケーションを操作できます。 GUI は、Java アプリケーションの簡単なインターフェースを構築するために重要な役割を果たします。
サンプルを使用して Java で GUI を作成する方法
この Java GUI チュートリアルでは、Swings in Java の例を使用して Java で GUI を作成する方法を理解しましょう。
ステップ 1) コードをエディターにコピーする
最初のステップで、次のコードをエディターにコピーします。
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button = new JButton("Press"); frame.getContentPane().add(button); // Adds Button to content pane of frame frame.setVisible(true); } }
ステップ 2) コードを実行する
次のステップ、保存、コンパイル、コードの実行
ステップ 3) 次のコードをエディターにコピーします
フレームにボタンを追加しましょう。指定された Java UI の例から次のコードをエディターにコピーします
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Press"); frame.getContentPane().add(button1); frame.setVisible(true); } }
ステップ 4) コードを実行
次に、コードを実行します。大きなボタンが表示されます。
ステップ 5) ボタンを2つ追加
ボタンを2つ追加してみませんか?次のコードをエディターにコピーします。
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Button 1"); JButton button2 = new JButton("Button 2"); frame.getContentPane().add(button1); frame.getContentPane().add(button2); frame.setVisible(true); } }
ステップ 6) プログラムを保存して実行
次に、プログラムを保存、コンパイル、実行します。
ステップ 7) 出力を確認
予期しない出力 =?ボタンが重なっています。
Java レイアウト マネージャー
レイアウト マネージャーは、コンテナー内の GUI Java コンポーネントをレイアウト (または配置) するために使用されます。多くのレイアウト マネージャーがありますが、最も頻繁に使用されるのは次のとおりです。
Java BorderLayout
BorderLayout
上、下、左、右、中央の最大 5 つの領域にコンポーネントを配置します。すべての Java JFrame のデフォルトのレイアウト マネージャーです
<センター>
<図>
センター>
Java FlowLayout
FlowLayout
JPanel
ごとのデフォルトのレイアウト マネージャーです。 .コンポーネントを 1 行に 1 つずつ並べるだけです。
<センター>
<図>
センター>
Java GridBagLayout
これは、すべてのレイアウトの中でより洗練されたものです。コンポーネントをセルのグリッド内に配置することでコンポーネントを整列させ、コンポーネントが複数のセルにまたがるようにします。
<センター>
<図>
センター>
ステップ 8) チャット枠を作る
以下のようなチャット枠を作ってみませんか?
以下のプログラムを見る前に、自分でコーディングしてみてください。
//Usually you will require both swing and awt packages // even if you are working with just swings. import javax.swing.*; import java.awt.*; class gui { public static void main(String args[]) { //Creating the Frame JFrame frame = new JFrame("Chat Frame"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 400); //Creating the MenuBar and adding components JMenuBar mb = new JMenuBar(); JMenu m1 = new JMenu("FILE"); JMenu m2 = new JMenu("Help"); mb.add(m1); mb.add(m2); JMenuItem m11 = new JMenuItem("Open"); JMenuItem m22 = new JMenuItem("Save as"); m1.add(m11); m1.add(m22); //Creating the panel at bottom and adding components JPanel panel = new JPanel(); // the panel is not visible in output JLabel label = new JLabel("Enter Text"); JTextField tf = new JTextField(10); // accepts upto 10 characters JButton send = new JButton("Send"); JButton reset = new JButton("Reset"); panel.add(label); // Components Added using Flow Layout panel.add(tf); panel.add(send); panel.add(reset); // Text Area at the Center JTextArea ta = new JTextArea(); //Adding Components to the frame. frame.getContentPane().add(BorderLayout.SOUTH, panel); frame.getContentPane().add(BorderLayout.NORTH, mb); frame.getContentPane().add(BorderLayout.CENTER, ta); frame.setVisible(true); } }
Java
- AzureにJavaEEアプリをデプロイする方法
- VHDL で文字列のリストを作成する方法
- Java Arrays チュートリアル:宣言、作成、初期化 [例]
- Java でオブジェクトの配列を作成する方法
- Java で乱数を生成する方法
- Java BufferedReader:例を使用して Java でファイルを読み取る方法
- Java で Char を String に変換する方法 (例)
- 再帰を使用してJavaで文字列を逆にする方法
- Java 10 - クラスデータ共有
- C# で簡単な PLCnext コンソール アプリケーションを作成する方法
- PLCnext ControlのJavaアプリケーション