EditBox

エディットボックス (EditBox) は、一般的なテキスト入力ウィンドウ要素です。

Summary
EditBoxエディットボックス (EditBox) は、一般的なテキスト入力ウィンドウ要素です。
実装の詳細フォーカスがあっている場合、エディットボックスには明滅するカーソルが表示され、全てのキーボード入力を捕捉(および表示)します。
XML定義
XMLタグ
任意属性
font使用するフォント定義の名前。
maxchars表示可能な最大文字数。
scrollbar入力されたテキストがウィンドウの縦幅を超える場合に用いる垂直スクロールバーの名前。
background背景として使用するフルリサイズイメージの名前。
linespacingフォントラインスペース用のオーバーライド値。
passwordパスワードボックスのように、入力した文字のかわりにアスタリスクを表示します。
scrolling使用するスクロールモードです。
inputこのエディットボックスが受け付ける入力タイプを指定します。
history追跡する(Enterキーが押されたときに自動的に追跡される)入力履歴のサイズです。
要素
TextColorテキスト色を設定します。
TexCoords背景テクスチャの基準座標を設定します。
TextOffsetエディットボックスに表示されているテキストのオフセットを設定します。
ウィンドウ コールバック
コールバック
OnTextChangedエディットボックス内のテキストが変化した時に呼び出されます。
関数
関数
TextEditBoxSetText()エディットボックスに表示するテキストを設定します。
TextEditBoxGetText()エディットボックスに現在表示されているテキストを返します。
TextEditBoxInsertText()現在のカーソル位置にテキストを挿入します。
TextEditBoxSetTextColor()テキスト色を設定します。
TextEditBoxGetTextColor()現在設定されているテキスト色を返します。
TextEditBoxSelectAll()エディットボックス内のテキストを全て選択します。
TextEditBoxSetFont()表示するテキストのフォントを設定します。
TextEditBoxGetFont()現在使用しているフォントの名前を返します。
TextEditBoxGetHistory()エディットボックスの入力履歴を返します。
TextEditBoxSetHistory()エディットボックスの入力履歴を設定します。
TextEditBoxSetHandleKeyDown()キーを押してもエディットボックスにテキストが追加されないように設定することができます。

実装の詳細

フォーカスがあっている場合、エディットボックスには明滅するカーソルが表示され、全てのキーボード入力を捕捉(および表示)します。

手動で WindowAssignFocus() を呼び出すか、マウスでクリックすることでエディットボックスにフォーカスをあてることができます。

スクロールモード

エディットボックスには2種類の異なるスクロールモードがあります。

horizontalテキストは常に一行で、カーソル位置に応じて左から右にスクロールします。
verticalボックスの端にテキストが到達すると、改行とスクロールが行われます (注意: スクロールは現在正しく機能しておらず、ボックスの下端を超えてテキストを表示させることはできません)。

入力制限

エディットボックスが特定の入力タイプを受け付けるように制限できます。

”all”全ての文字を受け付ける。
”nospaces”スペース以外のあらゆる文字を受け付ける。
”text”テキストのみ受け付ける。
”numbers”数値のみを受け付ける。

キーボードコマンド

矢印キーテキストの中でカーソルを上下左右に移動させます。
Shift + 上/下矢印キー前後の入力履歴を呼び出します。
左Shift + 左/右矢印キーカーソルの左/右の文字を選択します。
Shift + Ctrl + 左/右矢印キーカーソルの左/右の単語をまるごと選択します。
Ctrl + 左/右矢印キーカーソルを左/右へ1単語分移動します。
Homeテキストの先頭にカーソルを移動します。
Shift + Home先頭からカーソルまでの間にあるテキストを全て選択します。
Endテキストの最後にカーソルを移動します。
Shift + Endカーソルからテキストの最後までのテキストを全て選択します。
Delete選択されたテキストまたはカーソルのすぐ後ろのテキストを削除します。
Backspace選択したテキストもしくはカーソルの直前にあるテキストを削除します。
Control + Backspaceカーソルの前にある単語を丸ごと削除します。
Enter現在のテキストを入力履歴に追加する(履歴サイズが指定されていれば)。テキストを消去したい場合は、自分で OnKeyEnter() イベントの処理を扱う必要があります。
Control-Aテキストを全て選択します。
Control-C選択したテキストをクリップボードにコピーします。
Control-Vクリックボードにあるテキストをエディットボックスに貼りつけます。
Control-X選択したテキストをクリップボードに切り取ります。

XML定義

Summary
XMLタグ
任意属性
font使用するフォント定義の名前。
maxchars表示可能な最大文字数。
scrollbar入力されたテキストがウィンドウの縦幅を超える場合に用いる垂直スクロールバーの名前。
background背景として使用するフルリサイズイメージの名前。
linespacingフォントラインスペース用のオーバーライド値。
passwordパスワードボックスのように、入力した文字のかわりにアスタリスクを表示します。
scrolling使用するスクロールモードです。
inputこのエディットボックスが受け付ける入力タイプを指定します。
history追跡する(Enterキーが押されたときに自動的に追跡される)入力履歴のサイズです。
要素
TextColorテキスト色を設定します。
TexCoords背景テクスチャの基準座標を設定します。
TextOffsetエディットボックスに表示されているテキストのオフセットを設定します。

XMLタグ

<EditBox>
....
</EditBox>

代替グループ

任意属性

font

使用するフォント定義の名前。

データ型

string有効な Font の名前。

maxchars

表示可能な最大文字数。

データ型

integer0より大きい数値。

デフォルト値

  • 255

scrollbar

入力されたテキストがウィンドウの縦幅を超える場合に用いる垂直スクロールバーの名前。

データ型

string有効な VerticalScrollbar の名前。

デフォルト値

  • ””

メモ

  • エディットボックスにおけるスクロールバーは現在正しく機能しません。

background

背景として使用するフルリサイズイメージの名前。

データ型

string有効な FullResizeImage の名前。

デフォルト値

  • ””

linespacing

フォントラインスペース用のオーバーライド値。

データ型

integer0の場合はフォントの縦幅がそのまま使用されます。

デフォルト値

  • 0

password

パスワードボックスのように、入力した文字のかわりにアスタリスクを表示します。

データ型

boolean

trueアスタリスクを表示。
false実際のテキストを表示。

デフォルト値

  • false

scrolling

使用するスクロールモードです。

データ型

string

”vert”文章を自動改行します。
”horiz”一行でテキストを水平スクロールします。

デフォルト値

  • ”horiz”

input

このエディットボックスが受け付ける入力タイプを指定します。

データ型

string

”all”全ての文字を受け付ける。
”nospaces”スペース以外のあらゆる文字を受け付ける。
”text”テキストのみを受け付ける。
”numbers”数値のみを受け付ける。

デフォルト値

  • ”all”

history

追跡する(Enterキーが押されたときに自動的に追跡される)入力履歴のサイズです。

データ型

integer0からnまでの数値。履歴の長さを示します。

デフォルト値

  • 0

要素

TextColor

テキスト色を設定します。

構文

<TextColor r="255" g="255" b="255"  />
r赤色の値。
g緑色の値。
b青色の値。

デフォルト値

r255
g255
b255

TexCoords

背景テクスチャの基準座標を設定します。

構文

<TexCoords x="5" y="10" />
x背景テクスチャのX座標。
y背景テクスチャのY座標。

デフォルト値

x0
y0

TextOffset

エディットボックスに表示されているテキストのオフセットを設定します。

テキストの表示位置を調整することができます。

構文

<TextOffset x="5" y="10" />
x左上角からのXピクセルオフセット。
y左上角からのYピクセルオフセット。

デフォルト値

x0
y0

メモ

  • このオフセットはエディットボックスの上下及び左右の端から差し引かれる距離です。

ウィンドウ コールバック

Summary
コールバック
OnTextChangedエディットボックス内のテキストが変化した時に呼び出されます。

コールバック

OnTextChanged

エディットボックス内のテキストが変化した時に呼び出されます。

構文

SomeComboBox.OnTextChanged( text )
text(wstring) 現在のテキスト。

関数

Summary
関数
TextEditBoxSetText()エディットボックスに表示するテキストを設定します。
TextEditBoxGetText()エディットボックスに現在表示されているテキストを返します。
TextEditBoxInsertText()現在のカーソル位置にテキストを挿入します。
TextEditBoxSetTextColor()テキスト色を設定します。
TextEditBoxGetTextColor()現在設定されているテキスト色を返します。
TextEditBoxSelectAll()エディットボックス内のテキストを全て選択します。
TextEditBoxSetFont()表示するテキストのフォントを設定します。
TextEditBoxGetFont()現在使用しているフォントの名前を返します。
TextEditBoxGetHistory()エディットボックスの入力履歴を返します。
TextEditBoxSetHistory()エディットボックスの入力履歴を設定します。
TextEditBoxSetHandleKeyDown()キーを押してもエディットボックスにテキストが追加されないように設定することができます。

関数

TextEditBoxSetText()

エディットボックスに表示するテキストを設定します。

パラメータ

editBoxName(string) エディットボックスの名前。
text(wstring) テキスト文字列。

戻り値

nil戻り値無し。

TextEditBoxSetText( "LoginWindowUsername", GameData.Account.AccountName )

TextEditBoxGetText()

エディットボックスに現在表示されているテキストを返します。

パラメータ

editBoxName(string) エディットボックスの名前。

戻り値

text(wstring) テキスト文字列。

local currText = TextEditBoxGetText( "SomeEditBox" )

TextEditBoxInsertText()

現在のカーソル位置にテキストを挿入します。

現在選択中のテキストがある場合は、挿入されたテキストに置き換えられます。

パラメータ

editBoxName(string) エディットボックスの名前。
text(wstring) 挿入するテキスト文字列。

戻り値

nil戻り値無し。

TextEditBoxInsertText( "SomeEditBox", someTextToInsert )

TextEditBoxSetTextColor()

テキスト色を設定します。

パラメータ

editBoxName(string) エディットボックスの名前。
red(integer) 赤色の値 (0-255)。
green(integer) 緑色の値 (0-255)。
blue(integer) 青色の値 (0-255)。

戻り値

nil戻り値無し。

TextEditBoxSetTextColor ("ChatWindowContainerTextInput", 255, 255, 255)

TextEditBoxGetTextColor()

現在設定されているテキスト色を返します。

パラメータ

editBoxName(string) エディットボックスの名前。

戻り値

red(integer) 赤色の値 (0-255)。
green(integer) 緑色の値 (0-255)。
blue(integer) 青色の値 (0-255)。

local r, g, b = TextEditBoxGetTextColor( "SomeEditBox" )

TextEditBoxSelectAll()

エディットボックス内のテキストを全て選択します。

パラメータ

editBoxName(string) エディットボックスの名前。

戻り値

nil戻り値無し。

TextEditBoxSelectAll ("ChatWindowContainerTextInput" )

TextEditBoxSetFont()

表示するテキストのフォントを設定します。

パラメータ

editBoxName(string) エディットボックスの名前。
fontName(integer) 使用するフォントの名前。
lineSpacing(integer) 使用するラインスペースの値。

戻り値

nil戻り値無し。

関連するXML

TextEditBoxSetFont( "ChatWindowContainerTextInput", "font_default_text" )

TextEditBoxGetFont()

現在使用しているフォントの名前を返します。

パラメータ

editBoxName(string) エディットボックスの名前。

戻り値

fontName(integer) フォントの名前。

関連するXML

local fontName = TextEditBoxGetFont("SomeWindow")

TextEditBoxGetHistory()

エディットボックスの入力履歴を返します。

パラメータ

editBoxName(string) エディットボックスの名前。

戻り値

history(wstring-table) 履歴内の項目。 最新の項目はIndex 1になります。

関連するXML

TextEditBoxSetFont( "ChatWindowContainerTextInput", "font_default_text" )

TextEditBoxSetHistory()

エディットボックスの入力履歴を設定します。

パラメータ

editBoxName(string) エディットボックスの名前。
history(wstring-table) 履歴内の項目。 最新の項目はIndex 1になります。

戻り値

nil戻り値無し。

TextEditBoxSetHistory("ChatWindowContainerTextInput", SystemData.UserInput.ChatHistory )

TextEditBoxSetHandleKeyDown()

キーを押してもエディットボックスにテキストが追加されないように設定することができます。

パラメータ

editBoxName(string) エディットボックスの名前。
handle(boolean) true = 自動的にテキストを追加する, false =追加しない

戻り値

nil戻り値無し。

関連するXML

メモ

  • キー入力メカニズムを上書きすることができ、そのテキスト用に独自の表示を設定することができます。キーバインドウィンドウを作成する場合に便利です。

TextEditBoxSetHandleKeyDown( "KeyMappingWindowTextInput", false )
このウィンドウ要素にダイレクトフォーカスを割り当てたり、取り除いたりします。
Enterキーが押された時に呼び出されます。
ウィンドウ (Window) 要素はウィンドウを作成する際に使用する基本的な要素です。他のウィンドウ要素もこの要素の内容を継承しており、全ての属性、要素、データメンバー、関数をサポートしています。
フォントを定義します。
垂直スクロールバー (VerticalScrollbar) は、Windowsスタイルのスクロールバーを提供します。このウィンドウ要素は、自動的に他のいくつかのウィンドウコンポーネントを組み合わせたものです。
フルリサイズイメージ (FullResizeImage) 要素を使うことで、背景やフレームを作る際のタイル画像を自動的に作ることができます。
使用するフォント定義の名前。
Close