![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обработка OnKeyDown и передача фокуса ввода [D5, Win95/98, WinME, Win2k, WinXP]
bobj © (2004-07-12 18:49:00)Как в событии OnKeyDown при условии, что нажат Enter, параметру Key присвоить значение клавиши Tab и заставить передать фокус следующему крмпоненту?
Другими словами, пишу свой наследник от ТMaskEdit и нужно чтобы он передавал фокус по нажатию Enter.
dim- (2004-07-12 22:50:00) [1]Только у формы KeyPerview:=True поставь
dim- (2004-07-12 22:47:00) [2]procedure Teditsotr.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end;
end;
Семен Сорокин (2004-07-12 18:54:00) [3]этот обраюотчик у меня висел на форме - предке, переделай под себя.
procedure TFontForm.KeyDown(var Key: Word; Shift: TShiftState);
var
_wc: TWinControl;
begin
inherited;
if (Key = VK_RETURN) and (Shift = []) and Assigned(self.ActiveControl) and
not (self.ActiveControl is TCustomMemo) then begin
_wc := self.FindNextControl(self.ActiveControl, true, true, false);
if Assigned(_wc) and _wc.Visible and _wc.Enabled then
_wc.SetFocus
end
end;