Apdesigner プログラマーズガイド |
目次 索引 |
第3部 Apdesigner利用編 | > 第11章 Javaアプリケーション処理手続きを記述する | > 11.2 イベント処理を記述する |
Javaでイベントの処理を記述するには、Javaフォーム単位で1つのソースファイルを作成します。
Javaの場合、イベントの処理をイベントごとに、「Bean名_イベント名」の名前をもつメソッドの形式で記述します。Javaフォーム自体もBeanとして扱います。
イベント名は「名前1_名前2」という構成になっています。「名前1」はイベントのグループ名を表します。「名前2」はグループの中の詳細な識別情報です。
以下に、Javaでの記述形式を示します。
フレームの例を以下に示します。
public class フレームクラス名 extends javax.swing.JFrame { // Javaフォーム定義情報 // コンストラクタ // ユーザ定義初期化処理 // ユーザ処理 }
Javaフォーム定義情報は、ソース上"//@@Form Design Information start"と"//@@Form Design Information end"のコメントで囲まれており、Javaフォーム上のBeanの初期化処理、アテンションの設定などを行っています。
Javaフォーム定義情報は修正しないでください。修正した場合、フォーム編集、実行が正しく動作しない可能性があります。
以下に、エディットBean「textField1」のイベントについて、Javaで記述したソースファイルの例を示します。
この例では、「textField1」に数値を入力し、focus_focusLostイベントで、「textField1」の値が、100以上500以下かどうかを判定します。範囲以外の数値の場合や英数字など型が異なるものが入力された場合は、メッセージボックスを出し、正しい値の入力を促します。
public void textField1_focus_focusLost(FocusEvent e) { if( !defaultEventProc(e) ) { try { int val = Integer.parseInt( textField1.getText() ); if (val < 100 || val > 500) { MsgDlg("100以上500以下の値を入力して下さい","入力エラー"); textField1.requestFocus(); return; } } catch(NumberFormatException exception) { MsgDlg ("数値以外の文字が入力されています","入力エラー"); textField1.requestFocus(); return; } return; } }
目次 索引 |