メインコンテンツまでスキップ
バージョン: 19

入力

自動スペルチェック

4D にはカスタマイズ可能なスペルチェック機能がビルトインされています。 スペルチェックはテキスト型の 入力 オブジェクト、そして 4D Write Proドキュメントに対して実行可能です。

自動スペルチェックプロパティは、各オブジェクトのスペルチェックを有効にします この場合、スペルチェックはタイプ中に自動的に実行されます。 チェックしたいオブジェクトそれぞれに対して SPELL CHECKING 4Dランゲージコマンドを呼び出して実行することもできます。

JSON 文法

名称データタイプとりうる値
spellcheckbooleantrue, false

対象オブジェクト

4D Write Pro エリア - 入力


コンテキストメニュー

このプロパティを有効にすると、フォームの実行中にオブジェクトに対して標準のコンテキストメニューが使用できるようになります。

ピクチャー型の 入力 オブジェクトの場合、標準の編集コマンド (カット、コピー、ペースト、そしてクリア) に加え、ファイルからピクチャーを読み込むために使用することのできる 読み込み... コマンド、ピクチャーをディスクに保存するのに使用する 別名で保存... コマンドなどがあります。 また、メニューを使用してピクチャーの表示フォーマットを変更することもできます。トランケート (中央合わせなし)スケーリング そして スケーリング (中央合わせ/プロポーショナル) から選択できます。 このメニューを使用した 表示フォーマット の変更は一時的なものであり、レコードには保存されません。

マルチスタイル オプションがチェックされているテキスト型の 入力 オブジェクトの場合、標準の編集コマンド以外に以下の様なコマンドを使用することができます:

  • フォント...: フォントシステムダイアログボックスを表示させます。
  • 最近使用したフォント: セッション中に最近使用されたフォント名を表示します。 リストには最大で 10フォントまで表示されます (それ以上は古いものから置き換えられていきます)。 デフォルトではリストは空になっているので、このオプションは表示されません。 このリストは SET RECENT FONTSFONT LIST コマンドを使用して管理することができます。
  • スタイルの変更をおこなうためのコマンド: スタイル、サイズ、カラー、背景色。 このポップアップメニューを使用してユーザーがスタイル属性を編集する と、4D は On After Edit フォームイベントを生成します。

Webエリア の場合、メニューの内容はプラットフォームの描画エンジンにより設定されます。 コンテキストメニューへのアクセスは WA SET PREFERENCE コマンドを使用して制御できます。

JSON 文法

名称データタイプとりうる値
contextMenustring"automatic" (省略時のデフォルト), "none"

対象オブジェクト

入力 - Webエリア - 4D Write Pro エリア


入力可

入力可属性は、ユーザーがオブジェクトに値を入力できるかどうかを指定します。

すべてのアクティブオブジェクトはデフォルトで入力可です。 フォーム上の特定のフィールドやオブジェクトを入力不可にしたい場合、入力可チェックボックスの選択を解除します。 入力不可のオブジェクトはデータの表示のみをおこないます。 当該フィールド名や変数名を使用するメソッドによってデータを制御します。 入力不可オブジェクトでも On Clicked, On Double Clicked, On Drag Over, On Drop, On Getting Focus そして On Losing Focus フォームイベントは使用できます。 これらによって、カスタムコンテキストメニューの管理が容易になり、入力不可変数をドラッグ&ドロップしたり選択したりできるインターフェースをデザインすることができます。

このプロパティを無効にした場合、リストによってリストボックス列に関連付けられたポップアップメニューも使用できなくなります。

JSON 文法

名称データタイプとりうる値
enterablebooleantrue, false

対象オブジェクト

4D Write Pro エリア - チェックボックス - 階層リスト - 入力 - リストボックス列 - 進捗インジケーター - ルーラー - ステッパー


入力フィルター

日本語利用時の注意点: 入力フィルターは日本語IME と互換性がありません。入力文字種の制限及び#を使用した入力文字数の制限もできません。たとえば半角数字のみを 2文字だけ入力を許可する目的で、入力フィルターに&9##と指定しても、IME経由での全角数字やその他日本語文字の入力を防ぐことはできませんし、任意の数の文字が入力できてしまいます。アプリケーション仕様としてこのような制御が必要な場合は 4Dコマンドを使用する必要があります。

入力フィルターを使用するとデータ入力中にユーザーがタイプできる文字を制御できます。 指定リスト とは異なり、入力フィルターは文字ごとに処理がおこなわれます。 たとえば、パーツ番号が常に 2つの文字とそれに続く 3つの数字で構成されるとき、入力フィルターを通してそのパターンを強制することができます。 さらに特定の文字や数字のみを使用するよう制御することもできます。

入力フィルターはデータ入力時にのみ動作します。 オブジェクトの選択をユーザーが解除した後のデータ表示には効果がありません。 通常は、入力フィルターを 表示フォーマット と一緒に使用します。 フィルターはデータ入力を制約し、表示フォーマットはデータ入力後の値の表示を制御します。

データ入力中、タイプされるたびに入力フィルターは文字を評価します。 ユーザーが無効な入力をすると (たとえば文字の代わりに数字)、4D はその入力を受け付けません。 ユーザーが有効な入力をおこなうまで値は変更されません。

入力フィルターに表示フォーマットを併用することで、形式的な文字をユーザーが入力しなくてすむようにできます。 たとえば、アメリカ合衆国の電話番号は 3桁のエリアコードに、3桁と4桁に分割される 7桁の番号が続きます。 エリアコードをカッコでくくり、電話番号の3つ目の数字の後にダッシュを表示するような表示フォーマットを利用することができます。 このようなフォーマットが指定されている場合、カッコやダッシュをユーザーが入力する必要はありません。

入力フィルターの定義

ほとんどの場合、あらかじめ用意されている 4D の ビルトインフィルター を使用することができます。しかし、カスタマイズされたフィルターを作成することも可能です:

  • 入力フィルターコードを直接入力することができます。
  • ツールボックスのフィルターエディターで入力フィルターを作成し、その名前を指定することもできます。 開発者が作成したカスタムフィルターはリストの先頭に表示されます。

入力フィルターの作成に関する詳細は フィルターとフォーマットのコード を参照ください。

デフォルト入力フィルター

入力フィルタードロップダウンリストから選択できる入力フィルターの説明は以下の表の通りです:

入力フィルター説明
~Aすべての文字が入力可能、ただし大文字に変換されます。
&9数字のみ入力可能。
&A大文字の文字だけが入力可能。
&a文字だけが入力可能 (大文字と小文字)。
&@数字と文字が入力可能。 特殊記号を除きます。
~a##2桁の任意の文字が入力可能、大文字に変換されます。 (アメリカ合衆国の州名などに使われます)
!0&9##/##/##標準の日付入力フォーマット。 入力領域に 0 を表示します。 任意の数値が入力可能。
!0&9##年##月##日カスタムの日付入力フォーマット。 入力領域に 0 を表示します。 任意の数値が入力可能。 年月日が 2桁ずつ入力可能。
!0&9##:##時間入力フォーマット。 時と分だけが入力可能。 入力領域に 0 を表示します。 任意の4桁の数字が入力可能。
!0&9##時##分時間入力フォーマット。 入力領域に 0 を表示します。 時間と分数を 2桁ずつ入力可能。
!0&9##時##分##秒時間入力フォーマット。 入力領域に 0 を表示します。 時間と分数、秒数を 2桁ずつ入力可能。
!0&9###-####ローカルな郵便番号フォーマット。 入力領域に 0 を表示します。 任意の数値が入力可能。 (3桁の数字と 4桁の数字)
!_&9(###) !0###-####長距離電話番号フォーマット。 先頭の 3桁の入力領域はカッコで囲み (空の場合はアンダースコアを表示し)、残りの入力領域に 0 を表示。
!0&9###-###-###長距離電話番号フォーマット。 入力領域に 0 を表示します。 任意の数値が入力可能。 3桁と 3桁と 4桁の数字をハイフンで区分。
!0&9###-##-####アメリカ合衆国の社会保障番号フォーマット。 入力領域に 0 を表示します。 任意の数値が入力可能。
~"A-Z;0-9; ;,;.;-"大文字の文字と句読点。 大文字の文字、数字、スペース、コンマ、ピリオド、ハイフンだけが入力可能。
&"a-z;0-9; ;,;.;-"大文字と小文字の文字と句読点。 大小の文字、数字、スペース、コンマ、ピリオド、ハイフンだけが入力可能。
&"0-9;.;-"数字。 数字、小数点、ハイフン (マイナス記号) だけが入力可能。

JSON 文法

名称データタイプとりうる値
entryFilterstring
  • 入力フィルターコード、または
  • 入力フィルター名
  • 対象オブジェクト

    チェックボックス - コンボボックス - 階層リスト - 入力 - リストボックス列


    フォーカス可

    オブジェクトに対し フォーカス可 プロパティが選択されていると、そのオブジェクトはフォーカスを得ることができ、キーボードなどを使用してアクティブ化することができます。 オブジェクトはフォーカスを得ると、オブジェクトごとあるいは OS ごとに定められた方法でハイライトされます。ただし フォーカスの四角を隠す オプションが選択されている場合を除きます。

    入力可 に設定された 入力オブジェクト は常にフォーカス可です。


    • 選択時にフォーカスを表示しているチェックボックス


    • 選択されているが、フォーカスを表示していないチェックボックス

    入力できないオブジェクトに フォーカス可 プロパティが設定されていると、ユーザーはエリアの内容を選択、コピー、およびドラッグ&ドロップすることができます。

    JSON 文法

    名称データタイプとりうる値
    focusablebooleantrue, false

    対象オブジェクト

    4D Write Pro エリア - ボタン - チェックボックス - ドロップダウンリスト - 階層リスト - 入力 - リストボックス - プラグインエリア - ラジオボタン - サブフォーム


    キーボードレイアウト

    このプロパティは 入力 オブジェクトに対して特定のキーボードレイアウトを関連付けます。 たとえば、国際的なアプリケーションにおいて、フォーム内にギリシャ文字で入力しなければならないフィールドがあった場合、"ギリシャ語" のキーボードレイアウトをこのフィールドに対して関連付けることができます。 これにより、このフィールドがフォーカスを受けている場合にはデータ入力時にキーボード設定が自動的に変わります。

    デフォルトでは、オブジェクトはカレントのキーボードレイアウトを使用します。

    このプロパティは、OBJECT SET KEYBOARD LAYOUTOBJECT Get keyboard layout コマンドを使用して動的に設定することが可能です。

    JSON 文法

    名称データタイプとりうる値
    keyboardDialectテキスト言語コード (例: "ar-ma", "cs" など) RFC3066, ISO639 および ISO3166 を参照ください。

    対象オブジェクト

    4D Write Pro エリア - 入力


    複数行

    このプロパティは、テキストタイプの式や、文字およびテキストタイプのフィールドが割り当てられている 入力オブジェクト で使用できます。 値は、あり・なし・自動 (デフォルト) が選択できます。

    自動

    • 一行の入力オブジェクトでは、行の最後にある単語はエリアからはみ出し、改行はおこなわれません。
    • 複数行の入力オブジェクトの場合、4D は自動で改行します:

    なし

    • 一行の入力オブジェクトでは、行の最後にある単語はエリアからはみ出し、改行はおこなわれません。
    • 改行はおこなわれません。テキストは常に一行で表示されます。 文字やテキストのフィールドまたは変数が改行文字を含んでいる場合、エリアが更新されるとすぐに最初のキャリッジリターンより後のテキストが取り除かれます:

    あり

    この値を選択すると、追加の ワードラップ オプションが表示されます。

    JSON 文法

    名称データタイプとりうる値
    multilineテキスト"yes", "no", "automatic" (定義されていない場合のデフォルト)

    対象オブジェクト

    入力


    プレースホルダー

    4D では、フォームのフィールド内にプレースホルダーテキストを表示することができます。

    このテキストはフィールド内で半透明のテキストとして表示され、入力されるデータに関するヘルプ、指示、具体例などを表示します。 このテキストは、ユーザーが文字をエリアに入力した瞬間に表示されなくなります:

    プレースホルダーテキストは、フィールドの中身が消去されると再び表示されます。

    プレースホルダーとして表示できるデータの型は以下の通りです:

    • 文字列 (テキストまたは文字)
    • 日付または時刻 (ヌルのときブランクにする のプロパティがチェックされている場合に限ります)

    xliff 参照を ":xliff:resname" の形でプレースホルダーとして使用することもできます。たとえば:

    :xliff:PH_Lastname

    この場合、"プレースホルダー" のフィールドには参照のみを渡します。参照と静的なテキストを組み合わせることはできません。

    プレースホルダーのテキストは、OBJECT SET PLACEHOLDEROBJECT Get placeholder コマンドを使って、プログラミングによって設定したり取得したりすることができます。

    JSON 文法

    名称データタイプとりうる値
    placeholderstringオブジェクトに値が格納されていない場合に表示する半透明のテキスト

    対象オブジェクト

    コンボボックス - 入力

    参照

    ヘルプTips


    選択を常に表示

    このプロパティを選択すると、オブジェクト中で選択した文字列の反転状態が、フォーカスを失った後も表示されるようになります。 これにより、テキストスタイルを更新するようなインターフェースの実装が容易になります (マルチスタイル 参照)。

    JSON 文法

    名称データタイプとりうる値
    showSelectionbooleantrue, false

    対象オブジェクト

    4D Write Pro エリア - 入力


    ショートカット

    ボタンラジオボタン および チェックボックス にキーボードショートカットを割り当てることができます。 ショートカットによって、ユーザーはマウスを使用しなくてもキーボードからこれらのコントロールを操作することができます。

    ショートカットの設定をおこなうには、プロパティリストのショートカットプロパティの [...] ボタンをクリックします:

    カスタムメニューコマンドにもショートカットを割り当てることができます。 2つのショートカットに衝突がある場合には、アクティブオブジェクトが優先されます。 メニューへのショートカットの割り当てについては メニュープロパティを設定する を参照してください。

    4D のデザイン環境で使用できるショートカットの一覧は、環境設定ダイアログの ショートカットページ にて確認できます。

    JSON 文法

    名称データタイプとりうる値
    shortcutAccelbooleantrue, false (Windows: Ctrl/macOS: Command)
    shortcutAltbooleantrue, false
    shortcutCommandbooleantrue, false
    shortcutControlbooleantrue, false (macOS: Control)
    shortcutShiftbooleantrue, false
    shortcutKeystring
  • 任意の文字キー: "a", "b"...
  • "[F1]" - "[F15]", "[Return]", "[Enter]", "[Backspace]", "[Tab]", "[Esc]", "[Del]", "[Home]", "[End]", "[Help]", "[Page up]", "[Page down]", "[left arrow]", "[right arrow]", "[up arrow]", "[down arrow]"
  • 対象オブジェクト

    ボタン - チェックボックス - ピクチャーボタン - ラジオボタン


    シングルクリック編集

    リストボックスにおいて、編集モードへの直接移行を可能にします。

    このオプションがチェックされている場合、そのリストボックスの当該エリアが事前に選択されていたかどうかに関わらず、ユーザーのワンクリックだけでリストボックスセルを編集モードへと移行させることができます。 このオプションは、リストボックスの 選択モード が "なし" に設定されている場合でもセルの編集を可能にすると言う点に注意してください。

    このオプションがチェックされていない場合、セルの内容を編集するにはユーザーはまず最初に編集したいセルの行を選択し、その次に編集するセルを選択する必要があります。

    JSON 文法

    名称データタイプとりうる値
    singleClickEditbooleantrue, false

    対象オブジェクト

    リストボックス