【Java練習記】Swingの基本(3)
はじめに
ボタンを押したら、テキストが変わるプログラム。こちらからの操作に対して反応してくれる初めてのサンプル。
これを応用すれば、ボタンを押すと音が鳴ったりするプログラムが作れるわけか。ちょっと楽しくなってきた。
サンプルコード
import javax.swing.;import java.awt.;import java.awt.event.*;public class Sample extends JApplet {private JButton bt;private JLabel lb;public void init() {bt = new JButton(“購入”);lb = new JLabel(“いらっしゃいませ”);add(bt, BorderLayout.NORTH);add(lb, BorderLayout.SOUTH);bt.addActionListener(new SampleActionListener());}class SampleActionListener implements ActionListener {public void actionPerformed(ActionEvent e) {lb.setText(“ご購入ありがとうございます。”);}}}
分かったこと
- イベント、ソース(イベントソース)、リスナ
[…]ユーザーの操作を、イベント(event)という概念で扱うことになっています。[…]
イベントの発生元となるコンポーネントは、イベントソース(event source)、またはソース(source)と呼ばれています。[…]
発生したイベントは、リスナ(listener)と呼ばれる部分で処理することになります。
(『やさしいJava活用編(第4版)』、ソフトバンククリエイティブ、2013年、40-41頁。)
-
addActionListener()メソッドで、アクションリスナーを追加することができ、actionPerformed()メソッドで、アクションが発生したときの処理を始めることができる。addActionListener()メソッドは、ボタン以外でも使えるものがある。
-
リスナは、インターフェイスとメソッドの両方が無いといけないんだろうな。
疑問点
- 「actionPerformed(ActionEvent e)」の「ActionEvent e」は、とりあえず書いておけばいいのかな。