Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Сообщения клавиатуры   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
15-1189315977
Не пират
2007-09-09 09:32
2007.10.07
USB как работать с ними? Команды и т.д.


15-1189402825
ZeroDivide
2007-09-10 09:40
2007.10.07
Как наиболее надежным образом пополнить webmoney кошелек?


15-1189495429
BOA_KAA
2007-09-11 11:23
2007.10.07
Как сделать это быстрее?


2-1189576036
KazaModeDelphi
2007-09-12 09:47
2007.10.07
Получение TBitmap из друг....


15-1189503688
DillerXX
2007-09-11 13:41
2007.10.07
Почему до сих пор не отменили запрет на выезд