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

Вниз

как отключить клавиши   Найти похожие ветки 

 
chips   (2002-07-25 13:41) [0]

Уважаемые мастера , как можно отключить клавиши " пробел " , курсорные и т.п. на Форме чтобы не было перехода фокуса на другие элементы формы, что бы я мог клавиши использовать по другому ?


 
Opuhshii   (2002-07-25 13:50) [1]

KeyPreview


 
Skier   (2002-07-25 13:50) [2]

>chips


procedure TYourForm.CMDialogKey(var Message: TCMDialogKey); message CM_DIALOGKEY;
begin
//.................
end;


 
Skier   (2002-07-25 13:51) [3]

>Opuhshii
KeyPreview - это не нужно.



 
RV   (2002-07-25 14:23) [4]

setfocus


 
RV   (2002-07-25 14:26) [5]

в смысле когда пойдет не так как надо, вернешь фокус куда надо


 
chips   (2002-07-25 14:33) [6]

Ет , setfocus, канешно хорошо ,ток у меня по этой команде
начинают выполняться совсем не нужные команды .:-((


 
Skier   (2002-07-25 14:36) [7]

>chips
Про setfocus никого не слушай - это бред !


 
RV   (2002-07-25 14:52) [8]

Skier © (25.07.02 14:36)
>chips
Про setfocus никого не слушай - это бред !


в каком смысле?
на onExit
if length(edit1.Text)=0 then edit1.SetFocus
else button5.SetFocus;



 
Skier   (2002-07-25 14:55) [9]

>RV


> в каком смысле?


некрасивый это способ !


 
chips   (2002-07-25 16:04) [10]

может я чего не понимаю ,мне нужно отключить определенные клавиши
т.е. чтобы если выбрана кнопка, нужно что бы она автоматически не нажималась если я жамкаю "пробел" и т. п.


 
Skier   (2002-07-25 16:05) [11]

>chips
Вопросы нужно задавать правильно !


 
chips   (2002-07-25 16:12) [12]

спасибо за добрый совет....:-))


 
RV   (2002-07-25 16:53) [13]

хук повесь на клаву


 
mike kouzmine   (2002-07-25 19:33) [14]

KeyPreview надо, а затем KeyDown формы
if (key in [Что тебе надо отключить]) then
begin
case Key of
что тебе надо
end;
Key := 0;
end;


 
chips   (2002-07-26 12:54) [15]

Keyprewiew И Keydown пробовал , "пробел " можно отключить ,а вот
клавиши курсора никак :-((


 
Skier   (2002-07-26 12:56) [16]

>chips


> а вот
> клавиши курсора никак


см. Skier © (25.07.02 13:50)


 
chips   (2002-07-26 14:38) [17]

skier,
я не силен в синтаксисе, пытаюсь объявить procedure CMDialogKey(var Message: TCMDialogKey); message CM_DIALOGKEY;
Делфи орет : " Overloaded procedure "CVDialogKey" must be marked with the "overload" directive ",
если - procedure CMDialogKey(var Message: TCMDialogKey); message CM_DIALOGKEY; overload;
результ тот же ...:-((



 
Skier   (2002-07-26 14:42) [18]

>chips

>
> я не силен в синтаксисе


Книги очень помогают !


TForm1 = class(TForm)
private
procedure CMDialogKey(var Message: TCMDialogKey); message
CM_DIALOGKEY;
end; //TForm1


procedure TForm1.CMDialogKey(var Message: TCMDialogKey);
begin
//....
end;
</CODE


 
Билли   (2002-07-26 14:45) [19]

Насколько я помню, в этом случае по крайней мере стрелки (а может, и пробел), оседают где-то в вин.процедурах элементов управления и до формы не доходят.

Их можно перехватить в Application.OnMessage.


 
Skier   (2002-07-26 14:55) [20]

>Билли
Да точно ! CMDialogKey не пашет ! :(


 
Билли   (2002-07-26 14:59) [21]

Skier ©
Пашет, пашет. Устал я чего-то... :-(


 
Skier   (2002-07-26 15:01) [22]

>Билли
Вот ё ! А я что-то не смог ! Ха-ха !
Научи ! :)))


 
Билли   (2002-07-26 15:04) [23]

procedure TForm1.CMDialogKey(var Message: TCMDialogKey);
begin
if Message.CharCode = VK_LEFT then
Caption := Caption + " Left"
else
inherited;
end;



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

Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.61 MB
Время: 0.038 c
14-24183
^Sanya
2002-07-08 00:11
2002.08.08
Почём нынче лицензионное Delphi? (5,6)


3-23865
sergey32
2002-07-19 18:15
2002.08.08
Vendor initialzation filed


3-23919
AngeL B.
2002-07-18 12:29
2002.08.08
Существует ли стандартный способ для перерасчета вычислимых полей


3-23925
Sam
2002-07-17 18:55
2002.08.08
ADOQuery.Locate дает ошибку Record not found?


3-23953
the-best-officeman
2002-07-18 21:06
2002.08.08
for i := 0 to table1.RecordCount-1 do begin





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