HOWTO · Java
JTextField から値を取得する
この記事では、Java で JTextField から値を取得する方法を紹介します。
Java プログラミングは、視覚的表現のためにさまざまなリアルタイムの画像とコンポーネントを描画するためのユーティリティと関数を提供します。クラスは、さまざまなクラスにカプセル化されたレイアウト、サイズ、色を設定するためのさまざまなメソッドを提供します。これらの関数は、グラフィックプログラミングのベースになります。一部のパッケージは、グラフィックユーティリティクラスを保持します。java.awt``javax.swing パッケージは、グラフとアプレットの機能を提供します。
以下は、同じことを示すためのコードブロックです。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ValueFromJTextField extends JFrame implements ActionListener {
JTextField textField;
JButton submitButton = new JButton("Submit");
public ValueFromJTextField() {
JPanel myPanel = new JPanel();
add(myPanel);
myPanel.setLayout(new GridLayout(3, 2));
textField = new JTextField();
myPanel.add(textField);
myPanel.add(submitButton);
submitButton.addActionListener(this);
}
public void actionPerformed(ActionEvent actionEvent) {
if (actionEvent.getSource() == submitButton) {
String data = textField.getText();
System.out.println(data);
}
}
public static void main(String args[]) {
ValueFromJTextField g = new ValueFromJTextField();
g.setLocation(10, 10);
g.setSize(300, 300);
g.setVisible(true);
}
}
上記のコードブロックでは、実際の実行は main メソッドから始まります。
まず、ValueFromJTextField クラスのインスタンスが新しいキーワードを使用してインスタンス化されます。クラスのパブリックコンストラクターを内部的に呼び出します。コンストラクターに、いくつかの変数が初期化されます。JPanel のインスタンスがインスタンス化され、最初にダブルバッファを使用して新しいパネルが作成されます。このクラスは javax.swing パッケージに含まれており、Java でグラフィックスを表現するのに十分な機能を備えています。add メソッドは、java.awt パッケージにある Container クラスにあります。add メソッドは、パラメーターとして Component インスタンスを受け取り、渡されたインスタンスを Container コンポーネントの最後に追加します。渡された要素が null 値の場合、関数は NullPointerException をスローします。
パネルがコンテナに追加された後、setLayout 関数を使用してサイズを設定できます。Layout のインスタンスは関数に渡され、何も返しません。GridLayout コンストラクターは、行と列の値を設定します。グリッドに、テキストフィールドが作成され、add メソッドを使用してグリッドに挿入されます。テキストフィールドの横に、JBotton インスタンスが作成され、パネルに挿入されます。最後のステートメントとして、アクションリスナーがボタンインスタンスを送信するために追加されます。
コンストラクターの下に、アクションリスナーメソッドが実装されます。この関数は、ActionEvent クラスのインスタンスを取ります。このクラスは、コンポーネントに対して実行される一種のアクションまたはイベントを表します。コードブロック内で、ソースイベントは getSource メソッドを使用してチェックされます。そのため、アクションイベントインスタンスには、イベントが生成されたと思われる場所からイベントのソースをチェックするための事前定義された関数があります。したがって、条件付きでソースはボタンインスタンスから発信されているかどうかがチェックされます。
textField インスタンスは、getText メソッドの呼び出しに慣れています。この関数は、テキストフィールドコンポーネントに存在するテキストを返し、ドキュメントが null 値の場合に NullPointerException をスローします。最後に、テキスト文字列は、println 関数を使用してコンソール出力に出力されます。
上記のコードブロックのコンソール出力を以下に示します。
Hi, This is Jack Daniel
コンテナのレイアウトを以下に示します。