1.概要
テキストボックスは、アプリユーザーが文字を入力できるコントロールです。テキストボックスに入力された内容をデータベースに格納したり、取得した内容を判定して処理を分岐させたりすることもできます。
以下では、「2.開発の手引き」にて、テキストボックスでよく使う機能にかかわるサンプルプログラムがダウンロードできるほか、「3.パラメーター」では、テキストボックスに設定するパラメーターのリファレンスを記載しています。
2.開発の手引き
この記事では、テキストボックスを使いこなすうえでよく使うパラメーター設定をご紹介します。解説に使用しているサンプルプロジェクトは以下よりダウンロードできますので、ぜひご活用ください。
2-1.プレースホルダー付きテキストを作成する
2-1-1.プレースホルダーを設定する
プレースホルダーの設定をすることで、テキストボックスに何も入力されていないときにメッセージを表示させておくことができます。入力内容のガイドなどを記入するのに便利です。
プロパティーエリアの「データ」>「プレースホルダー」からテキストボックスに表示させたい内容を設定してください。同様に「データ」>「内容」からはテキストボックスの初期値を設定することができます。
2-1-2.デザインを設定する
テキストボックスのデザインはプロパティーエリアの「デザイン」>「色と形」から設定します。
ここでは、通常時のフォント色と枠線色を紺色に、プレースホルダーを薄灰色に設定します。
テキストの折り返しと複数行入力にチェック、表示内容を左上揃え、厚みを大きく設定します。
2-2.入力内容に対してエラーメッセージを表示する
2-2-1.エラーメッセージ出力ロジックの作成
パスワードやファイル名など特定の文字を入力してほしくないときなどに、入力サフィックスを設定することで検知することができます。また、検知した時にエラーメッセージを出力するロジックを設定することで、特定の1文字の入力が検出された際にエラーメッセージを表示させることができます。
2-2-2.ロジックの作成
テキストボックスの設定に入る前に、テキストボックスに設定するロジックを作成します。
「処理」設計機能から、「メッセージ」/「メッセージボックスを表示」ロジックを設定します。
ロジックは以下内容となっております。「”!”は使用できません」というメッセージが表示されます。
2-2-3.テキストボックスとロジックの紐づけ
「画面」設計機能に戻り、配置したテキストボックスを選択してプロパティーエリアの「オブジェクト」>「動作設定」の「特定サフィックス検出時処理」に、上で作成したロジックを設定して、「特定サフィックス(16進数)」を"21"とします。
これにより、テキストボックスの入力内容の末尾に"!"(エクスクラメーションマーク)が入力された際に「特定サフィックス検出時処理」が実行されるように設定されます。
なお、21とは、"!" を 16進数のASCIIコードに変換した値となります。
"!"以外でもエラーチェックを実装したい場合は、その文字に該当するASCIIコードを設定してください。
ASCIIコードについては、以下を参考ください。
ウィキペディア JIS X 0201
https://ja.wikipedia.org/wiki/JIS_X_0201
2-2-4.グラデーション
背景色をグラデーション設定してあります。
配置したテキストボックスを選択してプロパティーエリアの「デザイン」>「色と形」の「通常」行の「背景色」列のカラーを選択し、「グラデーション」より設定をします。
2-2-5.背景画像有り
配置したテキストボックスを選択してプロパティーエリアの「デザイン」>「画像」 にて、標準画像をクリックして、画像ファイルを選択します。
左下の位置、下かつ右揃えに設定しています。
内接フィットを選択することで、テキストコントロールの縦横幅の小さいほうに合わせて、
画像が縦横比を維持したまま縮小表示されます。
2-3.その他の動作設定
半角や全角などの「入力内容」を制限したり、入力できる文字列の長さなども設定できます。
また、「パスワード」にチェックを入れることでテキストボックスの内容が●表記で不可視化されます。
「ポップアップ入力」にチェックを入れた場合は、テキストボックスに入力するためのウインドウがポップアップ表示されます。
2-4.データベースと連携させる
2-4-1.テーブルを用意する
データベースと連携させるため、テーブルを作成します。サンプルプロジェクトでは「商品マスタ」として定義しています。
作成したテーブルの「設計」で「項目名」と「物理項目名」と「型」をそれぞれ登録します。
格納データに、以下のようにデータを準備しておきます。
フォームにデータフォームの設定をします。
フォームのコントロールが配置されていない箇所をクリックし、「データ」>「内容」の「テーブル名」に 上記で作成した「商品マスタ」を設定します。
2-4-2.商品マスタテーブルの内容を表に表示
データベースの内容をリアルタイムに表示するためのビューとしての表を準備します。
表コントロールを作成し、「データ」>「内容」から「フォーム」を選択します。
前述の格納データで、3件のデータを作成したので、表示件数は3を設定します。
表示項目ボタンを押すと「表示項目の設定」画面が表示されるので、下図のように設定します。
2-4-3.データフォームを設定する
テキストを選択し、データ>内容 で フォームを選択します。
フィールド名は 価格 を設定します。
3.パラメーター
パラメーターを変更することで、簡単にテキストボックスの位置や大きさ、色や形、表示する画像などを設定することができますので、それらを活用して、デザイン性に富んだ、わかりやすい画面を作成してみましょう。
また、画面操作時に呼び出す動作を設定することで、アプリユーザーがテキストボックスに入力をするとき、入力をした際に、アプリにさまざまな動作を実行させることができます。
オブジェクト
テキストボックスの基本情報や動作設定は「オブジェクト」から設定します。テキストボックスを非活性にしておくことで、アプリユーザーが特定の操作等をした際にだけ有効になるテキストボックスを設置することも可能です。
基本情報
名称 | テキストボックスの名称です。 処理ロジックからテキストボックスに動作を持たせる場合などは、 この名称でテキストボックスを指定します。 デフォルトでは「テキスト+連番数字」のようになります。 |
---|---|
ポップアップ タイトル |
ポップアップ入力や入力内容を日時に指定した場合などに、 表示されるダイアログのタイトルを指定します。 ポップアップタイトルが空欄の場合は、コントロールの名称が ポップアップのタイトルに表示されます。 |
サイズ | テキストボックスの幅と高さを1ピクセル単位で細かく指定することができ ます。 |
位置 | テキストボックスの位置を指定できます。画面の左上隅が起点になります。 |
余白 | テキストボックスにテキストや画像を表示させない余白領域をつくることが できます。テキストボックスの左右上下からの距離で指定します。 |
情報 | コントロールの種類が確認できます。変更はできません。 |
スタイル | 予め用意されたスタイルから選択することで、色や罫線等のパラメーターを 簡単に設定できます。 |
動作設定
実行処理 | テキストボックスをタッチまたはクリックし、 離した後に実行される処理を設定します。 |
---|---|
長押処理 | テキストボックスを長押し(1秒以上)した時に実行される 処理を設定します。 |
押下瞬間時処理 | テキストボックスを押した瞬間に実行される処理を設定し ます。 |
特定サフィックス検出時 | 「特定サフィックス(16進数)入力欄」に設定した値を検出 した時に、実行される処理を設定します。 |
IME制御(Windowsのみ) | Windows端末でテキストボックスにフォーカスしたときの 初期IMEモードを[変更なし][無効][全角ひらがな] [全角カナ][全角英数][半角カナ][半角英数] のどれかから選択します。 |
入力内容 | テキストボックスに入力できる文字列を[全て][半角英数の み][数値のみ][全角カタカナのみ][日付・時刻][日付][時刻] のどれかから選択します。 |
ピッカー/タップ時に 選択を完了(iOSのみ) |
「入力内容」で[日付・時刻][日付][時刻]を選択した場合 に選択できます。ピッカーをタップした時に選択を完了 する場合に選択します。 |
最大長 | テキストボックスに入力できる文字列の最大の長さを設定 します。 |
最大長単位 | 「最大長」で設定した長さの単位を[文字数][バイト数 (UTF-8)][バイト数(UTF-16)][バイト数(UTF-32)] [バイト数(Shift-JIS)][バイト数(JIS)][バイト数(EUC-JP)] のどれかから選択します。 |
パスワード | チェックを入れると、テキストボックスに入力した文字列 が、●によって隠れるようになります。また、その場合は 複数行の入力ができなくなります。 |
入力必須 | チェックを入れることにより、コントロール/入力必須 ロジックを実行するときの、入力チェック対象として 設定されます。 |
ポップアップ入力 | チェックを入れることにより、テキストを入力するとき に、テキスト入力するためのダイアログがポップアップ 表示されるようにします。 |
テキスト入力時に システムフォントを使用/ Android |
チェックを入れると、Android端末では入力中の文字列が システムフォントで表示されるようになります。 |
テキスト入力時に システムフォントを使用/iOS |
チェックを入れると、iOS端末では入力中の文字列が システムフォントで表示されるようになります。 |
テキスト入力時に システムフォントを使用/ Windows |
チェックを入れると、Windows端末では入力中の文字列が システムフォントで表示されるようになります。 |
フォーカス時のカーソル位置 | フォーカスが当たった際に、カーソルをどのように制御するかを[プロジェクトの設定に従う][末尾][先頭][全選択]のどれかから選択します。 |
特定サフィックス(16進数) | 「特定サフィックス検出時処理」の発生フラグとなる 文字列を、16進数のASCIIコードで入力できます。 |
特定サフィックス検出時 入力を維持 |
チェックを入れることにより、「特定サフィックス(16進 数)入力欄に設定した値」を検出した時に、フォーカスを外 さないようにします。 |
【注意】IME制御について
Microsoft IME(日本語)以外のIMEをお使いの場合は、IME制御機能の動作保証対象外です。
【注意】入力内容を数値のみとした場合
入力内容が数値のみである場合でも、アラビア数字以外にいくつかの文字が入力できます。どの文字が入力可能かはOSによって異なります。
可否
使用可 | このチェックを外すことでテキストボックスを非活性化(操作無効)することが できます。一定の条件が満たされるまで押すことができないテキストボックスを 設置する際などに利用します。 |
---|---|
表示 | このチェックを外すと、テキストボックスを非表示にすることができます。 一定の条件が満たされるまで表示されないテキストボックスを設置する際などに 利用します。 |
... | 省略文字を使用する場合にチェックします。 |
データ
テキストボックスに表示させるテキストや画像に関する設定は「データ」から行います。直接入力のほか、フォームやデータベースから抽出したテキストを表示させることもできます。
内容
値入力
テキストボックス内の文字表示を、直接入力する場合に設定します。
文字 | テキストボックスに表示されるテキストを入力できます。 |
---|---|
書式 | 表示されるテキストのフォーマットルールを設定します。 |
フォーム
テキストボックス内の文字表示を、データフォームを用いて入力する場合に設定します。
フィールド名 | フォームにセットしたテーブルから、表示内容の取得先となる フィールド(列)を選択します。 |
---|---|
書式 | 表示されるテキストのフォーマットルールを設定します。 |
使用可 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 使用可設定の取得先となるフィールドを選択します。 |
表示 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 表示設定の取得先となるフィールドを選択します。 |
前景色 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 前景色設定の取得先となるフィールドを選択します。 |
背景色 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 背景色設定の取得先となるフィールドを選択します。 |
テーブル
テキストボックス内の文字表示を、あらかじめ設定するのではなく、データベースを用いて入力する場合に設定します。
テーブル名 | 表示内容の取得先となるテーブルを選択します。 |
---|---|
フィールド名 | 表示内容の取得先となるテーブル内のフィールド(列)を選択します。 |
書式 | 表示されるテキストのフォーマットルールを設定します。 |
使用可 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 使用可設定の取得先となるフィールドを選択します。 |
表示 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 表示設定の取得先となるフィールドを選択します。 |
前景色 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 前景色設定の取得先となるフィールドを選択します。 |
背景色 | サブフォームリストにテキストボックスを配置した場合に、各行ごとの 背景色設定の取得先となるフィールドを選択します。 |
プレースホルダー
値入力
プレースホルダーの文字表示を、直接入力する場合に設定します。
文字 | テキストボックスに表示されるプレースホルダーを入力できます。 |
---|---|
書式 | 表示されるプレースホルダーのフォーマットルールを設定します。 |
フォーム
プレースホルダーの文字表示を、データフォームを用いて入力する場合に設定します。
フィールド名 | フォームにセットしたテーブルから、プレースホルダーの取得先となる フィールド(列)を選択します。 |
---|
テーブル
プレースホルダーの文字表示を、あらかじめ設定するのではなく、データベースを用いて入力する場合に設定します。
テーブル名 | プレースホルダーの取得先となるテーブルを選択します。 |
---|---|
フィールド名 | プレースホルダーの取得先となるテーブル内のフィールド(列) を選択します。 |
フィルター/直接入力 | テーブルからプレースホルダーを取得するときの抽出条件を 直接入力する場合に選択します。 |
フィルター/リスト選択 | テーブルからプレースホルダーを取得するときの抽出条件を リストから選択する場合に選択します。 |
デザイン
スタイルによらずテキストボックスの色や形、画像の設定を行うには「デザイン」を変更します。テキストボックスのデザインを細かく設定できます。
色と形
フォント | フォントタイプを指定します。 |
---|---|
サイズ | フォントのサイズを指定します。 |
太字 | 文字を太字にする場合にチェックします。 |
影 | 文字に影をつける場合にチェックします。 |
下線 | 文字の下線を[無し][下線][二重下線]の何れかから選択します。 |
取り消し線 | 文字に取り消し線をつける場合にチェックします。 |
折り返し | 文字を折り返して表示する場合にチェックします。 |
複数行 | 表示内容の値を複数行で入力する場合にチェックします。 |
文字列を縮小して 全体を表示 |
表示内容がコントロール内に収まらない場合に |
縦配置 | テキストボックス内の文字位置を[上揃え][上下中央揃え] [下揃え]の何れかから選択します。 |
横配置 | テキストボックス内の文字位置を[左揃え][左右中央揃え] [右揃え]の何れかから選択します。 |
通常フォント | 通常時のフォント色を指定します。 |
通常塗りつぶし | 通常時の背景色を指定します。 |
通常罫線/枠線 | 通常時の罫線/枠線の色を指定します。 |
使用不可フォント | 操作無効時のフォント色を指定します。 |
使用不可塗りつぶし | 操作無効時の背景色を指定します。 |
使用不可罫線/枠線 | 操作無効時の罫線/枠線の色を指定します。 |
プレースホルダーフォント | プレースホルダーのフォント色を指定します。 |
線の太さ | 線の太さを指定します。 |
丸み | テキストボックスの角の丸みを指定します。 |
厚み | テキストボックスの厚みを指定します。 |
変更イメージ
文字の縦配置/横配置(例)
文字:左上揃えの場合 文字:中央揃えの場合 文字:右下揃えの場合
|
|
|
グラデーション(例)
画像
標準画像 | 通常時に表示される画像を設定できます。 |
---|---|
画像削除 | 標準画像の設定をクリアできます。 |
押下画像 |
テキストボックスを押している間に表示される画像を設定できま 設定した画像をクリアする場合は画像削除ボタンをクリックします。 |
無効標準画像 |
操作無効時に表示される画像を設定できます。 設定した画像をクリアする場合は画像削除ボタンをクリックします。 |
無効押下画像 |
操作無効時にテキストボックスを押している間に表示される画像を設定できます。 設定した画像をクリアする場合は画像削除ボタンをクリックします。 |
画像の表示位置(垂直) | テキストボックス内の画像表示位置を[上揃え][上下中央揃え] [下揃え]の何れかから選択します。 |
画像の表示位置(水平) | テキストボックス内の画像表示位置を[左揃え][左右中央揃え] [右揃え]の何れかから選択します。 |
単辺フィット | 画像がテキストボックスの内側にフィットするようにサイズを 変更します。[設定なし][内接フィット][外接フィット] [縦横フィット]の何れかから選択します。 |
画像の表示位置(例)
|
|
|
画像の単辺フィット(例)
|
|
|
|
罫線
上種類 | 上罫線の種類を指定します。 |
---|---|
上色 | 上罫線の色を指定します。 |
下種類 | 下罫線の種類を指定します。 |
下色 | 下罫線の色を指定します。 |
左種類 | 左罫線の種類を指定します。 |
左色 | 左罫線の色を指定します。 |
右種類 | 右罫線の種類を指定します。 |
右色 | 右罫線の色を指定します。 |
\種類 | \罫線の種類を指定します。 |
\色 | \上罫線の色を指定します。 |
/種類 | /罫線の種類を指定します。 |
/色 | /上罫線の色を指定します。 |