- クラス「Hyouji」の作成
-
↓のソースを記述して「Test」フォルダに「Hyouji.java」というファイル名で保存。
1行目〜11行目はインポート文。01 : import java.awt.Frame;
02 : import java.awt.Button;
03 : import java.awt.TextField;
04 : import java.awt.Label;
05 : import java.awt.event.ActionEvent;
06 : import java.awt.event.ActionListener;
07 : import java.awt.event.KeyEvent;
08 : import java.awt.event.KeyListener;
09 : import java.awt.event.WindowEvent;
10 : import java.awt.event.WindowAdapter;
11 : import java.awt.Color;
12 :
13 : public class Hyouji{
14 :
15 : Frame frame1 = new Frame("Javaプログラミング");
16 : TextField text1 = new TextField();
17 : Button button1 = new Button("ボタン");
18 : Label label1 = new Label();
19 :
20 : public static void main(String[] args){
21 : Hyouji Hyouji1 = new Hyouji();
22 : Hyouji1.showFrame();
23 : }
24 :
25 : public void showFrame(){
26 : frame1.setBounds(100,100,350,400);
27 : text1.setBounds(20,40,100,20);
28 : button1.setBounds(130,40,40,20);
29 : label1.setBounds(20,65,300,300);
30 : label1.setBackground(Color.green);
31 :
32 : frame1.setLayout(null);
33 : frame1.add(text1);
34 : frame1.add(button1);
35 : frame1.add(label1);
36 :
37 : frame1.setVisible(true);
38 :
39 : MyTextActionListener1 mt1 =new MyTextActionListener1();
40 : text1.addActionListener(mt1);
41 :
42 : MyButtonActionListener1 mb1 =new MyButtonActionListener1();
43 : button1.addActionListener(mb1);
44 :
45 : MyWindowListener1 mw1 = new MyWindowListener1();
46 : frame1.addWindowListener(mw1);
47 : }
48 :
49 :
50 : class MyTextActionListener1 implements ActionListener {
51 : public void actionPerformed(ActionEvent e){
52 : System.out.println(text1.getText());
53 : label1.setText(text1.getText());
54 : }
55 : }
56 :
57 :
58 : class MyButtonActionListener1 implements ActionListener {
59 : public void actionPerformed(ActionEvent e){
60 : label1.setText(text1.getText());
61 : }
62 : }
63 :
64 :
65 : class MyWindowListener1 extends WindowAdapter {
66 : public void windowClosing(WindowEvent e){
67 : System.exit(0);
68 : }
69 : }
70 : }
15行目は文字列「Java」をもったフレーム、16行目はテキストフィールド、
17行目は文字列「ボタン」をもったボタン、18行目はラベルのインスタンスを作成しています。。
20行目〜23行目はメイン文で、自分自身のインスタンスを作成して
イベントソース(メソッド「showFrame」)を実行しています。
25行目〜47行目はイベントソース(メソッド「frame1」)です。
26行目〜37行目はフレームにテキストフィールド、ボタン、ラベルを置いてフレームを表示しています。
39行目〜40行目はイベントリスナ(クラス「MyTextActionListener1」)のインスタンスを作成し、テキストフィールドに対して設定しています。
42行目〜43行目はイベントリスナ(クラス「MyButtonActionListener1」)のインスタンスを作成し、ボタンに対して設定しています。
45行目〜46行目はイベントリスナ(クラス「MyWindowListener1」)のインスタンスを作成し、フレームに対して設定しています。
50行目〜55行目はイベントリスナ(クラス「MyTextActionListener1」)です。 52行目はアクションが発生した時に、テキストフィールドに入力された文字を取得してコマンドプロントに表示するように指定しています。
53行目はアクションが発生した時に、テキストフィールドに入力された文字を取得してラベルに表示されるように指定しています。
58行目〜62行目はイベントリスナ(クラス「MyButtonActionListener1」)で、ボタンがクリックされたときに、 テキストフィールドに入力された文字を取得してラベルに表示されるように指定しています。
58行目〜62行目はイベントリスナ(クラス「MyWindowListener1」)で、「閉じる」がクリックされたときに、プログラムを終了するように指定しています。
- コンパイル→実行
- とりあえず、コンパイルして実行まではうまくいきました。
次はプログラムがちゃんと動くのかですが、
・テキストフィールドに文字を入力してEnterキーを押すとラベルに入力した文字が表示される
・ボタンをクリックするとラベルにテキストフィールドの文字が表示される
・「閉じる」をクリックして終了される。
は大丈夫でした。
思っていたのと違ったのは、長い文字を入力すると端で折り返さないで途中で途切れてしまったことです。
ラベル以外に文字を表示するコンポーネントがあるのかな?よくわかんないです。
テキストフィールドの文字をラベルに表示するJavaプログラム
Javaの勉強をサボっていたので思い出すために、簡単なJavaプログラムを作ってみました。
コメントを書く