Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Основная";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
1-88411
ДЖИН
2002-05-17 00:43
2002.05.27
Всплывающие подсказки


4-88670
JIX
2002-03-26 14:21
2002.05.27
Цвета экрана


1-88412
Новенький в Делфи
2002-05-16 23:37
2002.05.27
конец файла


1-88544
NailS
2002-05-15 12:46
2002.05.27
Exception : Privileged instruction


1-88441
Vicosss
2002-05-15 09:03
2002.05.27
Подсчёт дней





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский