On After Edit
コード | 呼び出し元 | 定義 |
---|---|---|
45 | 4D View Pro エリア - 4D Write Pro エリア - コンボボックス - フォーム - 入力 - 階層リスト - リストボックス - リストボックス列 | フォーカスのある入力可能オブジェクトの内容が更新された |
説明
一般的なケース
このイベントは、キーボード入力可能なオブジェクトへのデータ入力を最も低レベルでフィルターするために使用できます。
このイベントは、変更がおこなわれた方法に関係なく、入力可能オブジェクトの内容が変更されるたびに生成されます。つまり:
- ペーストやカット、削除、キャンセルなどの標準の編集アクション
- 値のドロップ (ペーストと同様のアクション)
- ユーザーがおこなったキーボードからの入力。この場合、
On After Edit
イベントはOn Before Keystroke
とOn After Keystroke
イベントの後に生成されます。 - ユーザーアクションをシミュレートするランゲージコマンドによる変更 (例:
POST KEY
)。
On After Edit
イベント内において、入力テキストは Get edited text
コマンドによって返されます。
4D View Pro
FORM Event
によって返されるオブジェクトには以下のプロパティが格納されます:
プロパティ | 型 | 説明 |
---|---|---|
code | longint | On After Edit |
description | text | "On After Edit" |
objectName | text | 4D View Pro エリア名 |
sheetName | text | イベントが発生したシート名 |
action | text | "editChange", "valueChanged", "DragDropBlock", "DragFillBlock", "formulaChanged", "clipboardPasted" |
action
プロパティの値に応じて、イベントオブジェクト には追加のプロパティが含まれます。
action = editChange
プロパティ | 型 | 説明 |
---|---|---|
range | object | セルのレンジ |
editingText | variant | カレントエディターでの値 |
action = valueChanged
プロパティ | 型 | 説明 |
---|---|---|
range | object | セルのレンジ |
oldValue | variant | 変更前のセルの値 |
newValue | variant | 変更後のセルの値 |
action = DragDropBlock
プロパティ | 型 | 説明 |
---|---|---|
fromRange | object | ソースセルレンジ (ドラッグされる範囲) のレンジ |
toRange | object | 移行先セルレンジ (ドロップされる場所) のレンジ |
copy | boolean | ソースレンジがコピーされたかどうかを表します |
insert | boolean | ソースレンジが挿入されたかどうかを表します |
action = DragFillBlock
プロパティ | 型 | 説明 |
---|---|---|
fillRange | object | 自動入力のために使用されるレンジ |
autoFillType | longint | 自動入力のために使用される値 |
action = formulaChanged
プロパティ | 型 | 説明 |
---|---|---|
range | object | セルのレンジ |
formula | text | 入力されたフォーミュラ |
action = clipboardPasted
プロパティ | 型 | 説明 |
---|---|---|
range | object | セルのレンジ |
pasteOption | longint | クリップボードから何をペーストされたかを表します: |
pasteData | object | クリップボードからペーストされるデータ |
例題
以下は On After Edit
イベントを管理する例です:
If(FORM Event.code=On After Edit)
If(FORM Event.action="valueChanged")
ALERT("WARNING: You are currently changing the value\
from "+String(FORM Event.oldValue)+\
" to "+String(FORM Event.newValue)+"!")
End if
End if
上記のコードにより生成されたイベントオブジェクトは、以下のような形式をしています:
{
"code":45;
"description":"On After Edit";
"objectName":"ViewProArea"
"sheetname":"Sheet1";
"action":"valueChanged";
"range": {area:ViewProArea,ranges:[{column:1,row:2,sheet:1}]};
"oldValue":"The quick brown fox";
"newValue":"jumped over the lazy dog";
}