Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
3-68632
Leviathan
2002-09-27 12:30
2002.10.21
*.gdb


4-69079
And_
2002-09-06 10:42
2002.10.21
Регистрация пользователя в Windows 2k (XP)


3-68637
Wlad Gorohov
2002-09-29 00:33
2002.10.21
Как данные из dbgrid поместить в excel для распечатки?


1-68752
AL2002
2002-10-11 01:23
2002.10.21
Как сравнить две переменные TStrings?


14-68977
Kotka
2002-09-28 16:41
2002.10.21
Пиратское Delphi




   Наверх