घर
Top.Mail.Ru Yandeks.Metrika
मंच: "मुख्य";
वर्तमान संग्रह: 2002.07.01;
डाउनलोड करें: [xml.tar.bz2];

नीचे

कुंजियों के बारे में 2 सवाल इसी तरह की शाखाएँ खोजें


Коля   (2002-06-17 14:30) [0]

1:
У меня в программе в FormKeyDown читаются нажимаемые клавиши
if key = 37 then
....
if key = 38 then
....

Все бы хорошо, но если нажать обе кнопки вместе- не сработает не одна. Как сделать, чтобы в таком случае сработало оба if"а?

И другой вопрос- если на форме есть edit или memo, программа устанавливает на них фокус и FormKeyDown не реагирует на нажатия кнопок. Как вернуть фокус на форму?
अग्रिम धन्यवाद!



Lord Warlock   (2002-06-17 14:33) [1]

2। KeyPreview को True पर सेट करें



Fly`   (2002-06-17 14:38) [2]

1. Расскажи чего за клавиши ? ... так интересней будет
2. Edit.OnKeyDown=FormKeyDown и на сколько я знаю Форма не получит фокуса, т.к. она не является наследником TWinControl.



Коля   (2002-06-17 17:31) [3]

кнопки- стрелки..
कोड है:
//left
if Key= 37 then
begin
if lastcom <> 0 then
begin
lastcom:= 0;
hero.picture:= hero0b.picture;
end;
DrawHero(key);
end;
//right
If Key= 39 then
begin
if lastcom <> 1 then
begin
lastcom:= 1;
hero.picture:= hero0.picture;
end;
DrawPers(key);
end;
end;

при нажатии обоих кнопок одновременно необходимо, чтобы программа выполнила DrawPers 2 раза.



Alex is Fecit   (2002-06-17 19:21) [4]

1) Проще - поставить вместо цифирек имена клавишь ( VK_Left, VK_Right) - так надежней и понятней! А не действует - нужно добавить еще одну проверку: (Key=VK_left)and(Key=VK_right)
2)см
> लॉर्ड वॉरलॉक © (17.06.02 14: 33)
> 2. Поставь у формы KeyPreview в True




Anatoly Podgoretsky   (2002-06-17 19:29) [5]

Твое and не сработает, события нажатия клавиш поступают последовательно, а значит нужна история



Alex is Fecit   (2002-06-17 19:34) [6]

тогда наверно: в первом if поставить дополнительный и во втором!



Коля   (2002-06-18 01:56) [7]

я пробовал обя способа, но к сожалению ни один не работает... дело в том, что если нажать кнопки одновременно, значение KEY будет ИЛИ VK_Left ИЛИ VK_Up
может быть вместо OnKeyPress использовать OnKeyDown?



Коля   (2002-06-18 02:00) [8]

извините, перепутал: вместо OnKeyDown использовать OnKeyPress?



rhf   (2002-06-18 02:25) [9]

тебе надо ловить onKeyDown и onKeyUp
Для каждой из стрелок держать статус - нажата ли она
в onKeyDown становиться нажатой
в onKeyUp - ненажатой

ну и в том же кейДаун смотришь нажаты ли сейчас обе кнопки
у меня все получилоь вроде......



पन्ने: 1 पूरी शाखा

मंच: "मुख्य";
वर्तमान संग्रह: 2002.07.01;
डाउनलोड करें: [xml.tar.bz2];

ऊपर









मेमोरी: 0.58 एमबी
समय: 0.021 c
14-1175
BJValentine
2002-05-29 14:47
2002.07.01
तोशिबा नोटबुक


6-1128
कयामत
2002-04-19 23:26
2002.07.01
Как получить почту и при этом не удалять ее с сервера?


1-1012
स्काईवॉकर
2002-06-20 17:20
2002.07.01
डायनामिक ऐरे की लंबाई बदलें


3-856
Oleg_EM
2002-06-04 09:41
2002.07.01
प्रक्रिया / फ़ंक्शन में कई मान कैसे लौटाएं?


6-1126
बस लोग
2002-04-19 02:36
2002.07.01
NMHTTP अपने काम और कनेक्शन त्रुटियों के बारे में थोड़ा है





अफ्रीकी अल्बानियन अरबी भाषा अर्मेनियाई आज़रबाइजानी बस्क बेलारूसी बल्गेरियाई कैटलन सरलीकृत चीनी) चीनी पारंपरिक) क्रोएशियाई चेक डेनिश डच अंग्रेज़ी एस्तोनियावासी फिलिपिनो फिनिश फ्रेंच
गैलिशियन् जॉर्जियाई जर्मन यूनानी हाईटियन यहूदी हिंदी हंगरी आइसलैंड का इन्डोनेशियाई आयरिश इतालवी जापानी कोरियाई लात्वीयावासी लिथुआनियाई मेसीडोनियन मलायी मोलतिज़ नार्वेजियन
फ़ारसी पोलिश पुर्तगाली रोमानियाई रूसी सर्बियाई स्लोवाक स्लोवेनियाई स्पेनिश स्वाहिली स्वीडिश थाई तुर्की यूक्रेनी उर्दू वियतनामी वेल्श यहूदी बंगाली बोस्नियाई
सिबुआनो एस्पेरांतो गुजराती हौसा हमोंग ईग्बो जावानीस कन्नड़ खमेर लाओ लैटिन माओरी मराठी मंगोलियन नेपाली पंजाबी सोमाली तामिल तेलुगु योरूबा
ज़ुलु
Английский Французский Немецкий Итальянский Португальский Русский Испанский