Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.21;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
6-68901
Werewolfru
2002-08-19 11:37
2002.10.21
Temporary Files


1-68812
GIL
2002-10-10 04:01
2002.10.21
Глюк с MDI


3-68663
NeyroSpace
2002-09-30 18:02
2002.10.21
Можно ли узнать имя пользователя, порадившего событие?


14-69001
Tornado
2002-09-29 22:11
2002.10.21
Замучился


14-68966
Bi
2002-09-28 09:16
2002.10.21
Как удалить компоненты из DELPHI5.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский