UI_TextInput

   <task pointer> = UI_TextInput( <parent pointer>, <password mode>, <x>, <y>, <width>, <height>, "<default text>"
                                 [ , "<on-change-callback>", <widget-id>, <max-length>, <enable-chartype> ] )

   function <on-change-callback>(<task-pointer>, <new-string>, <widget-id>)
     -- <task-pointer> 呼び出し元 UI_TextInput のタスクポインタ
     -- <new-string>   更新された結果の文字列
     -- <widget-id>    タスク起動時に指定された<widget-id>の値
   end

引数

  • <parent pointer> 親UIのポインタ
  • <password mode> trueでパスワードモード(入力した文字列がコントロール上で伏せて表示される)で作成する。falseの場合は通常の入力。
  • <x>, <y> 表示座標
  • <width>, <height> 画面上の表示サイズ
  • <default text> 初期状態で設定する文字列
  • <on-change-callback> 文字列が変更されたときに呼ばれるコールバック名。指定されない場合は呼び出されない。
  • <widget-id> コールバックに渡されるID値。指定されない場合は 0 と同じ扱い。
  • <max-length> 入力可能な最大長
  • <enable-chartype> 文字種による入力制限。定数 TXCH_7BIT_ASCII と TXCH_UTF8 の論理和で与える。

戻り値

  • <task pointer> 生成された UI_TextInput タスクのポインタ

解説

OSのUI機能を使い、文字列入力コントロールを生成する。

文字列入力コントロールの表示は OpenGL ES の管理外にあるため、必ず最前面に表示される(プライオリティ制御はできない)

コマンド

UI_TEXTBOX_SETTEXT
文字列入力コントロールに文字列を設定する
  • UI_TEXTBOX_SETTEXT
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETTEXT, "<new text string>")
    
UI_TEXTBOX_GETTEXT
文字列入力コントロールに現在入力されている文字列を取得する
  • UI_TEXTBOX_GETTEXT
       pText = UI_TextInput(...)
       <now text string> = sysCommand(pText, UI_TEXTBOX_GETTEXT)
    
UI_TEXTBOX_SETPLACEHOLDER
プレースホルダー文字列を指定する
  • UI_TEXTBOX_SETPLACEHOLDER
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETPLACEHOLDER, "<placeholder-string>")
    
UI_TEXTBOX_SETCOLOR
文字列入力コントロールの文字色および背景色を、選択時および非選択時それぞれのケースについて設定する。 現在iOSでは対応済みだが、非対応環境ではサポートされない。
  • UI_TEXTBOX_SETCOLOR
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETCOLOR, <touch-case>, <foreground-rgb>, <background-rgb>)
    
       <touch-case>  true で選択時 / false で非選択時
       <foreground-rgb> フォアグラウンドカラー。具体的には文字の色。
       <background-rgb> バックグラウンドカラー。具体的には背景の色。
    
UI_TEXTBOX_SETFONT
文字列入力コントロールで使用されるフォントの種類およびサイズを指定する。
  • UI_TEXTBOX_SETFONT
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETFONT, "<font-name>", <font-size>)
      
       <font-name>  フォント名。システムフォントを使用する場合は nil を指定。
       <font-size>    フォントサイズ。見かけ上の大きさはラベル等と同じ基準。
    
UI_TEXTBOX_SETMAXLEN
入力可能な最大文字列長を指定する。
  • UI_TEXTBOX_SETMAXLEN
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETMAXLEN, <max-length>)
    
UI_TEXTBOX_SETCHARTYPE
入力可能な文字種を指定する。
  • UI_TEXTBOX_SETCHARTYPE
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETCHARTYPE, <enable-chartype>)
    
       <enable-chartype>  下記定数の論理和で、許可する文字種を与える。
          TXCH_7BIT_ASCII  7bit ASCII 文字。通常のいわゆる半角アルファベットおよび数字、記号等はこちらに含まれる。
          TXCH_UTF8           UTF8文字としているが、7bit ASCIIに含まれない文字は全てこちらに該当する。
    
UI_TEXTBOX_GETCHARCOUNT
入力されている文字数を読む。
  • UI_TEXTBOX_GETCHARCOUNT
       pText = UI_TextInput(...)
       count = sysCommand(pText, UI_TEXTBOX_GETCHARCOUNT)
    
UI_TEXTBOX_GETMAXLEN
テキストボックスの最大入力文字数を取得。
  • UI_TEXTBOX_GETMAXLEN
       pText = UI_TextInput(...)
       count = sysCommand(pText, UI_TEXTBOX_GETMAXLEN)
    
UI_TEXTBOX_SETALIGN
テキストボックスのアライメントを設定。
  • UI_TEXTBOX_SETALIGN
       pText = UI_TextInput(...)
       sysCommand(pText, UI_TEXTBOX_SETALIGN, <align-type>)
       
       <align-type> 下記定数のいずれかを設定(作成時のデフォルトは TX_ALIGN_LEFT )
         TX_ALIGN_LEFT       左揃え 
         TX_ALIGN_CENTER  中央揃え
         TX_ALIGN_RIGHT     右揃え