Форум: "Основная";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];
ВнизСообщения клавиатуры Найти похожие ветки
← →
Efir © (2007-07-25 22:10) [0]Странно, почему-то не отлавливаются события VK_LEFT, VK_UP, VK_RIGHT, VK_DOWN. Собственно в этом и есть вопрос. Вот кусок кода:
TPlayList = class(TCustomControl)
protected
procedure KeyDown(var Key: Word; Shift: TShiftState);override;
--------------------------------------------------------------
procedure TPlayList.KeyDown(var Key: Word; Shift: TShiftState);
begin
inherited;
case Key of
VK_UP:;
VK_DOWN:;
VK_LEFT:;
VK_RIGHT:;
end;
end;
Все остальные ловятся нормально.
← →
MBo © (2007-07-26 09:02) [1]см. сообщение WM_GetDlgCode и параметр DLGC_WANTARROWS
← →
Efir © (2007-07-26 20:58) [2]Понял почему, нужно отключить передачу фокуса с клавиатуры кнопками VK_LEFT, VK_UP, VK_RIGHT, VK_DOWN. Для Tab понятно, а для стрелочек я не нашёл как. По этой причине событие (при наличии на форне нескольких эл-тов управления) WM_GetDlgCode при нажатии стрелочек происходит только при принятии фокуса.
← →
Leonid Troyanovsky © (2007-07-26 23:06) [3]
> Efir © (26.07.07 20:58) [2]
Ошибка в 17 строке.
--
Regards, LVT.
← →
Efir © (2007-07-27 00:38) [4]
> Leonid Troyanovsky © (26.07.07 23:06) [3]
А как определили?
← →
Leonid Troyanovsky © (2007-07-27 09:08) [5]
> Efir © (27.07.07 00:38) [4]
> А как определили?
Путем скурпулезных расчетов.
--
Regards, LVT.
← →
Efir © (2007-07-27 18:09) [6]Ну а если серьёзно, как отключить перевод фокуса клавишами вверх, вниз?
← →
Leonid Troyanovsky © (2007-07-28 12:42) [7]
> Efir © (27.07.07 18:09) [6]
http://groups.google.com/group/borland.public.delphi.objectpascal/msg/6138baa735cfb5e3
--
Regards, LVT.
← →
Efir © (2007-07-28 13:36) [8]
> Leonid Troyanovsky ©
Спасибо запомощь, разобрался.
TPlayList = class(TCustomControl)
protected
procedure CMChildKey(var Message: TCMChildKey);message CM_CHILDKEY;
--------------------------------------------------------------
procedure TPlayList.CMChildKey(var Message: TCMChildKey);
begin
case Key of
VK_UP:;
VK_DOWN:;
end;
Message.Result:=1;
inherited;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.111 c