![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Чтобы сообщения клавы получала только форма? [D6, WinXP]
Viacheslav © (2006-09-04 05:13:00)Имеется форма(KeyPteview=TRUE), на форме TListView.
Как мне сделать так чтобы при нажатии клавиш все сообщения получала ТОЛЬКО форма, а список нет.
Loginov Dmitry (2006-09-06 08:11:00) [1]
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssCtrl in Shift) and (Key = VK_UP) and
(ActiveControl = ListBox1)
then
Key := 0;
end;
При этом KeyPreview = True
Viacheslav (2006-09-06 05:08:00) [2]
> Цель какая?
Допустим нажали мы <Ctrl+Up> в TForm1.OnKeyDown мы его оброботали, но при этом в списке курсор(выделеная строка) побежала вверх. А как чтобы не бежала???
MBo (2006-09-04 08:45:00) [3]Цель какая?
Elen (2006-09-04 08:13:00) [4]
> Создай для формы обработчик, потом OnClick и ListView1.OnClick:
> =formclick;
Пардон - опечатка не OnClick а OnKeyPress
Gens (2006-09-04 08:01:00) [5]Используй для формы обработчик OnKeyPress, keyPreview := true, в списке можно тоже в обработчике OnKeyPress вбить Form.KeyPress;
Elen (2006-09-04 07:54:00) [6]
> Viacheslav
Создай для формы обработчик, потомOnClick и ListView1.OnClick:=formclick;