DBeditに数字の入力制限するには?

解決


Miyabi  2003-03-23 00:04:17  No: 3205  IP: [192.*.*.*]

DBEditコンポーネントにFloatのデータベースを関連ずけて、DBEditにdatabase  Fieldの桁数以上を入力したとき、エラーが返されます。
stringの場合、Sizeにより入力できないのですが、数字の場合でも入力時に制限できないものでしょうか?

編集    削除
えび  2003-03-24 20:33:38  No: 3206  IP: [192.*.*.*]

入力の桁数ならDBEditのMaxLengthで設定できますが、
Floatの場合はデフォルトで指数での入力も可能な為
例えば"1E10"と入力した場合、入力桁数は4桁になりますが
実際データベースに格納される数値は11桁になります。

単純にチェックするだけなら、フィールドオブジェクトの
OnSetTextイベントハンドらでチェックできますが
(OnValidateやDBEditのOnExitまでは到達しません)
キー入力の時点で指数を無効にしようとするとかなりプログラムを
作りこむ必要があります。

編集    削除
Miyabi  2003-03-25 02:25:36  No: 3207  IP: [192.*.*.*]

えびさんのご指導深く感謝致します。
MaxLengthにより対応したく思います。
今後とも、ご指導のほどお願い申し上げます。

編集    削除