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

Вниз

Не обрабатываются VK_Up, Vk_Down и т.п.   Найти похожие ветки 

 
TransparentGhost   (2004-04-01 12:30) [0]

Компонент
TADSheet = class(TCustomControl)

Procedure KeyDown(Var Key:Word;Shift:TShiftState); Override;
не реагирует на нажатия стрелок и таб, и при етом теряет фокус.
Что нужно сделать, чтобы определять нажатия етих клавиш и не теряля фокус?
С буквенными кнопками всё нормально.


 
TUser ©   (2004-04-01 12:34) [1]

А что проц-ра делать-то должна. Для создания свойства используется FOnKeyDown:TType, где TType = procedure (Var Key:Word;Shift:TShiftState) of object.


 
MBo ©   (2004-04-01 12:47) [2]

Если не ошибаюсь, обработчик CM_DialogKey попробуй


 
TransparentGhost   (2004-04-01 12:51) [3]

Процедура внутри компонента. При нажатии стрелок изменяются некоторые переменные, в зависимости от которых идёт прорисовка Канвы.
Типа того
Procedure TADSheet.KeyDown(Var Key:Word;Shift:TShiftState);
Begin
 Inherited KeyDown(Key,Shift);
    Case Key of
       VK_UP: Dec(Y);
       VK_DOWN: Inc(Y);
    End;
End;


 
TransparentGhost   (2004-04-01 16:10) [4]

CM_DialogKey и KeyDown - реагирует на всё, кроме стрелок.


 
TransparentGhost   (2004-04-01 16:15) [5]

Ничего не надо указать в CreateParams или ещё где?


 
MBo ©   (2004-04-01 16:18) [6]

Еще
CM_WANTSPECIALKEY
WM_GETDLGCODE


 
MBo ©   (2004-04-01 16:19) [7]

Точнее, обработчик CM_WANTSPECIALKEY нужен

procedure TMyComponent.CMWantSpecialKey(var Message: TCMWantSpecialKey);
begin
 inherited;
 if Message.CharCode = VK_LEFT then
   Message.Result := 1;
end;


 
TransparentGhost   (2004-04-01 16:31) [8]

Спасибо, заработало!!!



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

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

Наверх




Память: 0.45 MB
Время: 0.034 c
6-1076580368
npr2
2004-02-12 13:06
2004.04.18
удаленный доступ


7-1076501691
Michail Dalakov
2004-02-11 15:14
2004.04.18
User32.dll и DCOM


3-1079854753
wizzo
2004-03-21 10:39
2004.04.18
Перестало работать EXEC SP_EXECUTESQL @SQL


3-1079933497
snake1977
2004-03-22 08:31
2004.04.18
Pervasive+Betrive


6-1076475026
AloneAli
2004-02-11 07:50
2004.04.18
Не могу законнектиться к Outlook у





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский