TextField (텍스트필드) Widget Control
サンプルファイル: 07_Work_with_Widgets/textfield_objet.lfp
TextFieldウィジェットをスクリプトから制御するときに使うWidget Control(Property・Method・Event)の一覧です。ウィジェットの紹介と使い方はTextFieldドキュメントをご覧ください。
以下の例のtextfieldIDは、キャンバスでTextFieldウィジェットに指定した名前(ID)です。スクリプトではウィジェットID.メンバーの形式でアクセスします。
Widget Control一覧
| Widget Control | 種類 | シグネチャ | 説明 |
|---|---|---|---|
setText | Method | setText(text): void | テキストを設定(画面に反映) |
requestFocus | Method | requestFocus(): void | このフィールドにキーボードフォーカスを移動 |
getText | Method | getText(): string | 現在のテキストを返す |
getTextWidth | Method | getTextWidth(includePadding, useHint?): number | 現在のテキストのレンダリング幅(px)を測定 |
text | Property | string(読み取り/書き込み) | フィールドのテキスト |
onTap | Event | onTap = () => { ... } | フィールドをタップしたとき |
onChanged | Event | onChanged = (value) => { ... } | テキストが変わるたび(1文字ごとの入力も含む) |
onTabKey | Event | onTabKey = () => { ... } | Tabキーを入力したとき |
onSubmitted | Event | onSubmitted = (value) => { ... } | 送信(Enter/アクションボタン)したとき |
onEditingComplete | Event | onEditingComplete = () => { ... } | 編集が完了したとき(フォーカスが外れる前) |
onFocusOut | Event | onFocusOut = () => { ... } | フォーカスを失ったとき |
Property
text
フィールドに入力されたテキストです。読み取りと書き込みの両方ができ、値がない場合は読み取り時に空文字列('')を返します。
- 型:
string - アクセス: 読み取り/書き込み
Example
textfieldID.text = "안녕하세요";
const t = textfieldID.text;
Method
setText
フィールドのテキストを設定し、画面に反映します。
- Parameters
text(string): 設定するテキスト
- Returns: なし(
void)
Example
textfieldID.setText("hello");
getText
現在のテキストを返します。値がない場合は空文字列を返します。
- Parameters: なし
- Returns:
string- 現在のテキスト(ない場合は'')
Example
const t = textfieldID.getText();
getTextWidth
現在のテキストをフィールドのフォントスタイルでレンダリングしたときのピクセル幅を測定します。内容に合わせてフィールドのサイズを調整するときに便利です。
- Parameters
includePadding(boolean): trueの場合、装飾(decoration)の横方向の内側の余白を加算します(余白が未設定のときは24を使用)useHint(boolean、デフォルトfalse): trueの場合、入力テキストの代わりにヒントテキストとスタイルを測定します
- Returns:
number- テキストの幅(px)
Example
const w = textfieldID.getTextWidth(true);
requestFocus
このTextFieldにキーボードフォーカスを強制的に与えます。イベントに応じてTextFieldへ即座にフォーカスを移す必要がある場面で使用します。
- Parameters: なし
- Returns: なし(
void)
Example
textfieldID.requestFocus();
Event
onChanged
テキストが変わるたび(1文字ごとの入力も含む)に実行されます。
- ハンドラー引数:
value(string)- 変更後のテキスト - Returns: なし
Example
textfieldID.onChanged = (value) => {
// value: 変更後のテキスト
};
onEditingComplete
編集が完了したとき(例: キーボードのEnterキーを押したとき)、フォーカスが外れる前に実行されます。
- ハンドラー引数: なし
- Returns: なし
Example
textfieldID.onEditingComplete = () => { /* ... */ };
onSubmitted
ユーザーがフィールドを送信したとき(例: Enter/キーボードのアクションボタン)に実行されます。
- ハンドラー引数:
value(string)- 送信されたテキスト - Returns: なし
Example
textfieldID.onSubmitted = (value) => { /* ... */ };
onTap
フィールドをタップしたときに実行されます。
- ハンドラー引数: なし
- Returns: なし
Example
textfieldID.onTap = () => { /* ... */ };
onFocusOut
フィールドがキーボードフォーカスを失ったときに実行されます。
- ハンドラー引数: なし
- Returns: なし
Example
textfieldID.onFocusOut = () => { /* ... */ };
onTabKey
Tabキーを入力したときに実行されます。
- ハンドラー引数: なし
- Returns: なし
Example
textfieldID.onTabKey = () => { /* ... */ };
共通Widget Control(すべてのウィジェット)
すべてのウィジェットでは、setProperty(name, value)/getProperty(name)/setStyleProperty(styleName, styleProperty, value)のような共通Widget Control(Method)も使用できます。詳しいルールは共通Widget Controlリファレンスをご覧ください。