![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кто работал с компонентом TAdvStringGrid ? [D5]
kserg@ukr.net © (2002-05-13 18:08:00)Подскажите можно ли в ячейке сделать полноценный контроль
ввода времени в офрмате ЧЧ:MM
и чтобы с проверкой вводимого значения на ЧЧ<24 и ММ<60.
Сам пока дошел только до задания формата ввода
procedure TMainForm.timeStrGrdGetEditMask(Sender: TObject; ACol,
ARow: Integer; var Value: String);
begin
Value := "!99:99;1;*";
end;
А вот как влепить контроль?
Paxer (2002-05-15 12:07:00) [1]Подскажите плиз, где взять и что может этот компонент либо сбросьте на адрес pavel@dt.ck.ua.
KilkennyCat (2002-05-15 11:13:00) [2]Хе... я тоже мучался, в результате вскрыл mask.pas и добавил в эту процедурку:
function TCustomMaskEdit.CharKeys(var CharCode: Char): Boolean;
var
SelStart, SelStop : Integer;
Txt: string;
CharMsg: TMsg;
begin
Result := False;
********************************************
GetSel(SelStart, SelStop);
if selstart = 0 then chch := charcode;
if ((selstart = 0) and (ord(charcode) > 50)) or
((selstart = 1) and (ord(chch) = 50) and (ord(charcode) > 51)) or
((selstart = 1) and (ord(charcode) > 52)) or
((selstart = 3) and (ord(charcode) > 53)) or
((selstart = 6) and (ord(charcode) > 53)) then exit;
**********************************************************
if Word(CharCode) = VK_ESCAPE then
begin
Reset;
Exit;
end;
То есть, в первом месте можно вводить только 012, во втором только 0123 (я не использую 24 часа, максимум 23:59:59) в третьем и пятом 012345
kserg@ukr.net (2002-05-14 12:06:00) [3]>KilkennyCat © (14.05.02 11:53)
согласен. и спасибо за совет.
а лучше подскажи формат маски, чтоб нельзя было ввести
время типа 26:70 ??
KilkennyCat (2002-05-14 11:53:00) [4]В демке, прилагаемой к компоненту, есть все варианты вставки в ячейки различных чекбохсов, едитов и проч. Вставьте маскедит.
kserg@ukr.net (2002-05-14 11:03:00) [5]Всё таки может кто то отзовется?