ST Get text
ST Get text ( {* ;} object {; startSel {; endSel}} ) : Text
引数 | 型 | 説明 | |
---|---|---|---|
* | 演算子 | → | 指定時objectはオブジェクト名 (文字列) 省略時 objectは変数またはフィールド |
object | any | → | オブジェクト名 (* 指定時)または、テキストフィールドか変数 (* 省略時) |
startSel | Integer | → | 文字選択の開始位置 |
endSel | Integer | → | 文字選択の終了位置 |
戻り値 | Text | ← | スタイルタグを含むテキスト |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
ST Get text コマンドは object 引数で指定されたフィールドや変数中のスタイル付きテキストを返します。
オプションの * 引数を渡した場合、object引数にはオブジェクト名 (文字列) を渡します。コマンド実行時にオブジェクトにフォーカスがある場合、コマンドは編集中のオブジェクトに関する情報を返します。他方オブジェクトにフォーカスがない場合、コマンドはオブジェクトのデータソース (フィールドや変数) に関する情報を返します。
* 引数を省略した場合、object 引数にはフィールドや変数を指定します。この場合文字列ではなくフィールドまたは変数への参照を渡します。コマンドはこのフィールドや変数に関する情報を返します。
コマンドはテキストに割り当てられたスタイルタグとともにテキストを返します。これは例えばスタイルを保持したままテキストのコピーとペーストを行う場合に使用します。
オプションのstartSelとendSel引数を使用して、object中のテキストを選択できます。startSelとendSelの値はプレーンテキストの選択に使用され、スタイルタグは無視されます。
- startSel と endSelを省略すると、 ST Get text はobjectに含まれるすべてのテキストを返します。
- startSel と endSelを渡すと、ST Get text はこれらの引数により選択されたテキストを返します。
4D では選択範囲を自動的に指定するために startSel 引数と endSel 引数に渡せる規定済み定数を用意しています。これらの定数は "Multistyle Text" テーマ内にあります:
定数 | 型 | 値 | コメント |
---|---|---|---|
ST End highlight | 倍長整数 | -1001 | オブジェクト内のカレントのテキストセレクションの最後の文字を指定します(*) |
ST End text | 倍長整数 | 0 | オブジェクトに含まれるテキストの最後の文字を指定します。 |
ST Start highlight | 倍長整数 | -1000 | オブジェクト内のテキストのカレントセレクションの最初の文字をを指定します (*) |
ST Start text | 倍長整数 | 1 | オブジェクト内に含まれるテキストの最初の文字を指定します。 |
(*) これらの定数を使用するためには、 object にオブジェクト名を渡す必要があります。フィールドまたは変数への参照を渡した場合、コマンドはオブジェクトの全てのテキストに対して適用されます。
startSel と endSel の値が等しい場合、またはstartSel が endSelよりも大きい場合、エラーが返されます。
システム変数およびセット
このコマンド実行後、エラーがなければOKシステム変数に1が設定されます。そうでなければ0が設定されます。これは特にスタイルタグが正しく評価できなかった場合に発生します (正しくない、あるいは失われたタグ)。
エラーの場合、変数は変更されません。テキストが評価される際に変数にエラーが発生すると、4Dはテキストをプレーンテキストに変換します。結果、"<"、">"、"&"文字はHTML実体参照に変換されます。