Текущий архив: 2005.06.29;
Скачать: CL | DM;
Вниз
MaskEdit в KOL Найти похожие ветки
← →
DmiSb (2004-11-04 10:54) [0]Как проще организовать такую штуку ?
Уточняю: нужно контролировать ввод в формате "#0.00", т.е. денежных сумм.
Сделал такую проверочку
procedure TMainF.EditBoxChar(Sender: PControl; var Key: Char;
Shift: Cardinal);
begin
if not (key in ["0".."9",".",#8]) then
key:=#0;
if (Pos(".", EditBox.Text)>0) and not (key in [ #8]) then
if Length(EditBox.Text)-Pos(".",EditBox.Text)>1 then key:=#0;
end;
Вроде работает. Но если пользователь ввел "123.5", тогда нужно дописывать еще один нолик при выходе, чтобы было "123.50", но у EditBox нет события onExit.
Или может я вообще ерундой занимаюсь и существует какое-нибудь простое решение ?
Заранее спасибо.
← →
ecm (2004-11-04 11:18) [1]OnLeave - при потере фокуса (выходе?)
← →
Я(ты)234 (2004-11-04 11:54) [2]самому дописать
← →
DmiSb (2004-11-04 13:25) [3]OnLeave я нашел, спасибо.
Мне было интересно, есть более красивое решение, а то как-то все это не совсем нравиться, хотя и работает. Да и MaskEdit ведет себя немного по другому.
← →
Gandalf © (2004-11-17 18:13) [4]Можно при каждом вводе тестить по маске RegExpr - регулярных выражений - но это +20(40)Кб... а принцип схожий. Не забываем про Ctrl+V/C при вводе (Shift+Ins)
Страницы: 1 вся ветка
Текущий архив: 2005.06.29;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.111 c