掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
入力桁数のチェック方法 (ID:2448)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Basserさん、ありがとうございます。 イベントについて初歩的な質問なのですが > procedure FloatFieldValidate(Sender: TField); とは、 『Table1コンポーネントをダブルクリックして「項目の追加」を行う画面でカラム:Column1 の OnValidate を設定する』 ということなのでしょうか? もしあっているならば、こちら↓の手続きで(TTableではなくTQueryですが) procedure TDM.Query1COLUMN1Validate(Sender: TField); var Q_Length: Integer; Q_Value: String; begin Q_Value := Form1.DBGrid1.SelectedField.Text; Q_Length := Length(Sender.AsString); if Q_Value > '999999999' then //小数点以下は無視 begin showmessage('最大値オーバー'); DM.Query1.Cancel; Abort; end else begin //(小数点ナシ整数部10桁以上)or(小数点アリで位置が10桁目以上)の場合 if ((Q_Length > 9) and (AnsiPos('.', Sender.AsString) = 0)) or (AnsiPos('.', Sender.AsString) > 10) then begin showmessage('入力桁数オーバー'); DM.Query1.Cancel; Abort; end; end; end; うまく動作させることができました。 Basserさん、ありがとうございます m(_"_)m "AnsiPos"の使い方を知りませんでした。 それと > TField のValidChar プロパティで入力制限をかけて というのは Form1.DBGrid1.Fields[3].ValidChars := [#0..#9]; では違いますよね?! よろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.