2012年10月19日金曜日

TEdit に数字のみ入れる

TEdit に数字だけ入力だけしたい、そんな時がきっとあるはず!
だからといって、TMaskEditTUpDown とか TNumberBox を使うまでもないって時に、下のような関数を用意して使っています。

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (not CharInSet(Key, [#8, '0'.. '9'])) then
Key := #0;
end;

一般的すぎるテクニックで記事を更新!

簡単に解説すると、'0'.. '9' は、普通に数字を表しているだけなので判ると思います。
#8 は、バックスペースです。
これがないと、バックスペースで文字を消せなくなるので注意が必要です。

0 件のコメント:

コメントを投稿