Вниз
Скачать: CL | DM;

TAdvStringGrid - конроль ввода в ячейку   Найти похожие ветки 

 
kserg@ukr.net   (2002-05-17 10:50) [0]

кто работал с TAdvStringGrid подскажите мне, как сделать контроль ввода в ячейку данных в формате hh:mm.
Я пытаюсь организовать след.путем:
- в событии OnEditMask задаю маску ввода Value:="!90:00;1;_";

- а в событии OnCellValidate делаю

try
ETime:= StrToTime(Value);
valid:= true;
except
MessageDlg("Incorrect time "+Value,MtError,[mbOk],0);
valid:= false;
end;


Но алгоритм где-то не закрывает "дыру".
Напр.: ввожу 59:00, жму ENTER - срабатывает контроль, вылетает месага, возврат фокуса к ред-нию некорректного значения, но если я повторно жму ENTER - то контроль уже не работает.
(я подозреваю, что не наступает само событие редактирования)

Тоже самое, если после набора некорректного времени я мышкой жму в др.ячейку: контроль срабатывает (месага вылетает), но фокус всё равно перемещается в новую ячейку, а в старой остается некорректное значение.
помогите, а то уже задолбася отлавливать...


 
kserg@ukr.net   (2002-05-17 11:54) [1]

так всё таки - какие еще события задействовать, чтоб контроль вводимого времени был более строгим


 
kserg@ukr.net   (2002-05-17 13:14) [2]

раз никто такого не делал, то хоть мыслю подкиньте :-)


 
KilkennyCat ©   (2002-05-17 16:17) [3]

я же уже отвечал... у меня все работает.
Можно просто отлавливать все нажатия клавиш в данной ячейке.
то есть, контролировать позицию и разрешать только цифры и только одного диапазона. Получится программная маска, простая и надежная.


 
kserg@ukr.net   (2002-05-17 17:44) [4]

>KilkennyCat © (17.05.02 16:17)
а пример можешь подкинуть?

я такое делал, но для TEdit-a, где просто контролировал ввод числа безо всякой маски


 
KilkennyCat ©   (2002-05-18 02:51) [5]

смотри ответ на свойи предыдущие вопросы.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.008 c
4-88689
Andery G
2002-03-25 18:25
2002.05.27
как отследить запуск приложения


1-88439
eSKey
2002-05-17 12:53
2002.05.27
Опять TStream -


14-88622
lipskiy
2002-04-11 12:12
2002.05.27
---|Ветка была без названия|---


1-88481
Faustus
2002-05-14 19:10
2002.05.27
Быстрое преобразование Фурье


14-88599
s
2002-04-18 11:37
2002.05.27
Помогите горю!




   Наверх