ActionEvent クラス

[内容]

  ボタンを押す,メニュー項目を選択,テキストフィールドで改行キーを入力といったイベントを処理します.

[主なメソッド]

[使用例]

  1. プログラム例は,ボタンを押すとメッセージがテキストエリアに表示されるという,非常に簡単な例です.ここをクリックするとアプレット版が表示されます(プログラム).

  2. プログラム例では,2 つのボタンを用意し,「赤」というボタンを押すとテキストエリアの文字が赤に,また,「青」というボタンを押すと青に変わります.ActionListener を用いてイベント処理を行っています.ここをクリックするとアプレット版が表示されます(プログラム).

  3. プログラム例は,リスト処理の例ですが,イベント処理を,ActionListener を用いて行っています.ItemListener の場合とは異なり,項目をダブルクリックしないと選択されません.ここをクリックするとアプレット版が表示されます(プログラム).

  4. プログラム例は,TextArea クラス,及び,TextField クラスに対するイベント処理の例です.上のテキストフィールドに文字を入力し改行キーを押すと,その内容がテキストエリアに表示されます( ActionListener の利用).また,テキストエリアの内容を変更すると,2 番目のテキストフィールドにメッセージが表示されます( TextListener の利用).ここをクリックするとアプレット版が表示されます(プログラム).

  5. プログラム例は,ダイアログの一例です.テキストエリアに文字を入力して範囲を選択した後,テキストアリアの下側でマウスの右ボタンをクリックすると,カット&ペーストを行うためのダイアログ(小さな Window )が現れ,テキストエリア内の文字に対してカット&ペーストを実行できます.ここをクリックするとアプレット版が表示されます(プログラム).ただし,ダイアログは,フレームまたはもう 1 つのダイアログをその所有者として定義しなければなりませんので,アプレットから新しい Window を生成し,それをスクリーン中央に表示しています.また,Window を閉じる方法がアプリケーションの場合と異なっています.なお,アプレット自身の大きさは 0 にしてあるため表示されません.

  6. プログラム例は,メニューバー関連クラス( MenuBar クラスMenu クラスMenuItem クラスCheckboxMenuItem クラス)の各メソッド等の使用例です.メニューバーのメニューという項目をクリックすると,下図に示すようなメニューが出現します.最初の 2 つのメニューをクリックすると,テキストエリアにメッセージが表示されます.また,この 2 つのメニューには,キーボードショートカットが割り付けてあります.3 番目の項目は,CheckboxMenuItem です.クリックすることにより,チェックを付けたり消したりすることができます.4 番目の項目は,サブメニューを持っており,テキストエリアの内容に対して,カット&ペーストを行うことができます.また,最後の項目をクリックすると Window が閉じられます.ここをクリックするとアプレット版が表示されます(プログラム).ただし,アプレットには,メニューバーを表示できないため,アプレットから新しい Window を生成し,それをスクリーン中央に表示しています.また,Window を閉じる方法がアプリケーションの場合と異なっています.なお,アプレット自身の大きさは 0 にしてあるため表示されません.

  7. プログラム例は,PopupMenu クラスの各メソッド等の使用例です.テキストエリア内でマウスの右ボタンをクリックすると,ポップアップメニューが出現し,テキストエリア内のデータに対してカット&ペーストを実行することができます.ここをクリックするとアプレット版が表示されます(プログラム).なお,テキストエリアの表示結果の違いは,アプリケーションの場合( Frame クラスを使用し,そのデフォルトレイアウトは BorderLayout )とアプレット版( Applet クラスのデフォルトレイアウトは FlowLayout )とのレイアウトマネージャの違いによるものです.

  8. プログラム例は,Timer クラスの使用例です.クラス Test では,100 ミリ秒ごとにカウンタを 1 ずつ増加させ,カウンタの値が 500 になった時点で終了するタスクを記述しています.Timer が 500 ミリ秒ごとに割り込み,その時点におけるカウンタの値をテキストエリアに表示し,かつ,JProgressBar にその値を設定し,現在の進捗状況がわかるようになっています.ここをクリックするとアプレット版が表示されます(プログラム).

[参照]

ActionListener, Button, JButton, List, TextField, Dialog, MenuBar, PopupMenu, javax.swing.Timer, AbstractAction

ホームページ 目次 演習解答例目次 付録目次 索引