Tips

コンボボックスのデータをリアルタイムで制御する方法

日付2005/09/30
ID39436 (英語原文参照)
バージョン2004
プラットフォームMac & Win

On After KeystrokeとOn Data Changeを使用してフォームオブジェクトの値を調べ、データを更新するという練習問題です。

コンボボックスは、入力可、タブ化(MacOS X)であり、入力補助としてドロップダウンを利用できる便利なオブジェクトです。テキストエリアに直接タイプして入力できる値に制限を設けるには、バックグラウンドで動作するコードが必要です。下記のサンプルコードは、有効なデータだけを入力段階で受け入れるコードの例と、有効なデータだけをテキスト配列に追加する例を兼ねています。
例題には、次のようなティップスが含まれています。

ASCII(Keystroke)- キーボードによる入力データをキャプチャし、ASCIIコードを返します。
On after keystroke- キーストロークのデータがオブジェクトに代入された時点でキャプチャします。
HIGHLIGHT TEXT-指定した範囲のテキストをハイライトします。
Self->{0}-テキスト配列の現在画面に表示されている値を指します。
Find in array-ワイルドカード記号が使用できます。

サンプルコードの手法は、テキスト配列だけでなく、テキストオブジェクトにも応用ができます。On After Editについて、別のTech Tipで扱われています。