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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.018 c
4-24282
IIS
2002-05-31 11:35
2002.08.08
Как програмно раздавать права на реестр?


1-24019
anod
2002-07-28 23:08
2002.08.08
Подкиньте идейку


14-24179
Cobalt
2002-07-12 07:48
2002.08.08
УК РФ, Статья 242. Незаконное распространение порнографических ма


1-24035
eruc
2002-07-25 17:37
2002.08.08
Как создать <?xml version=


1-24118
vinger
2002-07-26 20:25
2002.08.08
serial