メインコンテンツまでスキップ
バージョン: 開発中

FORM Event

FORM Event : Object

引数説明
戻り値Objectイベントオブジェクト

説明

FORM Event は、発生したフォームイベントに関する情報を格納しているオブジェクトを返します。通常、FORM Event はフォームまたはオブジェクトメソッド内にて使用します。

返されるオブジェクト

返されるオブジェクトは、それぞれ以下のメインのプロパティを格納しています:

プロパティ詳細
objectNameテキストイベントをトリガーしているオブジェクト名。フォームによってトリガーされている場合には含まれていません。
code倍長整数フォームイベントの数値。Form event code を参照のこと。
descriptionテキストフォームイベント名(例: "On After Edit")

例えば、ボタンをクリックした場合、オブジェクトには以下のプロパティが格納されます:

{"code":4,"description":"On Clicked","objectName":"Button2"}

イベントオブジェクトには、イベントが発生したオブジェクトによっては追加のプロパティが含まれていることがあります。これは以下のオブジェクトで生成されたeventObj オブジェクトが対象です:

  • リストボックスまたはカラムオブジェクト。詳細はdeveloper.4d.com でのリストボックスのドキュメント を参照してください。
  • 4D View Pro エリア。詳細はOn VP Ready フォームイベント を参照してください。

注: カレントのイベントが何もない場合、FORM Event はnull オブジェクトを返します。

例題 1

ボタン上でOn Clicked イベントを管理したい場合を考えます:

 If(FORM Event.code=On Clicked)
    ...
 End if

例題 2

カラムオブジェクト名に、実際のデータクラスの属性名を以下のように設定した場合:

On Header Click イベントを使用してカラムをソートすることができます:

 Form.event:=FORM Event
 Case of
    :(Form event code=On Header Click)
       if(Form.event.columnName="lastname")
          Form.employees:=Form.employees.orderBy(Form.event.columnName+", firstname")
       End if
 End case

例題 3

リストボックスオブジェクトのOn Display Details イベントが発生したときに、メタ情報式 プロパティに設定したメソッドを実行したい場合を考えます:

setColor メソッドの中身です:

 var $event;$0;$meta : Object
 $event:=[#current_title_incod]
 $meta:=New object
 
 Case of
    :($event.code=On Display Detail)
       If($event.isRowSelected)
          $meta.fill:="lightblue"
       End if
 End case
 $0:=$meta

その結果、行が選択された際のリストボックスは以下のようになります:

参照

Form event code