Ext JS に関しては,新しい記事は Sunvisor Lab. ExtJS 別館 にあります。そちらもよろしくお願いいたします。

ExtJSでのイベント処理など

 ExtJSのコードを,Ext Designerではき出した後,コンポーネントからのイベントを処理する部分を書かなければなりませんが,はき出されたコードに書き加えていたら,画面デザインの変更のたびに面倒なことになります。

ですから,当然,イベント処理は別ファイルでやることになるんだと思います。デザイン定義部分とは別の場所でイベントを低位議するにはどうしたらよいのでしょうか。

  1. ボタンの場合,Ext.getCmp(<ID>)でコンポーネントを得て,handlerにイベントハンドラを記述する。
  2. 他のイベントの場合も,同様にgetCmpでコンポーネントを得て,onメソッドでイベントハンドラを記述する。
Ext.getCmp('btnTest').handler = function () {
        Ext.Msg.alert('test','test');
    }
    Ext.getCmp('txtTest').on('change', function () {
        Ext.Msg.alert('test','変更されたよ');
    });

ついでに,コンポーネントに値を設定する場合もgetCmpで得たオブジェクトに対してsetValueメソッドでセットします。

Ext.getCmp('btnTest').handler = function () {
        Ext.Msg.alert('test','test');
        Ext.getCmp('txtTest').setValue('aaaaa');
    }
    Ext.getCmp('txtTest').on('change', function () {
        Ext.Msg.alert('test','変更されたよ');
    });

 

トラックバック


URL から "-MoIyadayo" を削除してトラックバックを送信してください。
トラックバックは承認後に表示されます。