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

Вниз

TGraphicControl - OnKeyDown   Найти похожие ветки 

 
d_oleg ©   (2002-10-11 10:28) [0]

Подскажите пожалуйста, как заставить потомка от TGraphicControl ловить нажатия клавиш?


 
han_malign ©   (2002-10-11 10:33) [1]

private
procedure WMKeyDown(var Message: TWMKeyDown); message WM_KEYDOWN;

что стоит залезть в Controls.pas и посмотреть как там все реализованно,
а вообще, для этих вещей следует использовать более функциональный TCustomControl


 
d_oleg ©   (2002-10-11 10:34) [2]

если б так было всё просто. не ловит он так нифига.


 
Skier ©   (2002-10-11 10:36) [3]

>d_oleg
А какие клавиши тебя интересуют ?


 
d_oleg ©   (2002-10-11 10:47) [4]

ну в-принципе любые клавиатурные. для управления с клавы движением фигуры, которую отрисовываю на TGraphicControl.


 
han_malign ©   (2002-10-11 10:52) [5]

а он у тебя фокус получает?
без фокуса он и не должен ничего ловить.
З.Ы. А фокус появляется опять таки с TWinControl, так что тебе еще фокус протаскивать.
З.З.Ы Насколько я понял, ты делаешь Control с тонким интерфейсом, тогда в controls.pas и выдергивай все что тебе нужно из TWinControl.


 
d_oleg ©   (2002-10-11 10:54) [6]

Ok, понял. Попробую.


 
Skier ©   (2002-10-11 10:54) [7]

>d_oleg


> для управления с клавы движением фигуры, которую отрисовываю
> на TGraphicControl



procedure CMDialogKey(var Message: TCMDialogKey); message CM_DIALOGKEY; ?


 
han_malign ©   (2002-10-11 11:02) [8]

2 Skier
CM_DIALOGKEY пользовательское сообщение, которое вызывается в TWinControl по CN_KEYDOWN, а человеку нужно в TGraphicControl


 
Skier ©   (2002-10-11 11:05) [9]

>han_malign
Ага. Точно. Был не прав.


 
han_malign ©   (2002-10-11 11:09) [10]

причем CN_KEYDOWN это WM_KEYDOWN+CN_BASE приходит при нажатии кнопки во время захвата Control-а мышью (для Drag-n-Drop)
(единственное место где я нашел его с поясннением, хотя в TWinControl с ним какие то пляски с бубном)



Страницы: 1 вся ветка

Текущий архив: 2002.10.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
7-69034
Dmitry Raduzhan
2002-08-14 10:05
2002.10.21
таймер (вероятно к Ученик)


1-68747
arcad
2002-10-11 10:49
2002.10.21
Обработка сообщений


14-68986
kofman
2002-09-29 00:51
2002.10.21
Как


3-68615
pvasya
2002-09-28 09:58
2002.10.21
EOleException


14-69017
Gumanoid
2002-09-06 17:53
2002.10.21
Win ?????