Вниз
Скачать: CL | DM;

А можно обработать сразу две клавиши ?   Найти похожие ветки 

 
Developer   (2004-07-01 20:29) [0]

Суть такова, при нажатие клавиши кнопка движеться по форме. При этоодновременно работает только одна клавиша, та что нажата последней. Можно сразу две обработать клаваши? чтобы например подвигать кнопку по диагонали.

if key=vk_right then begin
moveB.Left:=MoveB.Left+5;
end;


 
Rem   (2004-07-01 20:32) [1]

Для двигания кнопок по форме нет ничего лучше двух мышек!


 
default ©   (2004-07-01 20:35) [2]

так по какой-нибудь кнопке делай
if key=<X> then begin
moveB.Left:=MoveB.Left+5;
moveB.Top:=MoveB.Top-5;
end;
и тд


 
ламер ©   (2004-07-01 20:52) [3]

смысл такой:
в private секции:
FLeftKeyPressed, FRightKeyPressed, FUpKeyPressed,
FDownKeyPressed: Boolean;

в OnKeyDown устанавливаешь нужную переменную в True, в OnKeyUp - в False. по таймеру проверяешь:

if FLeftKeyPressed and FUpKeyPressed then ...


 
Developer   (2004-07-01 21:40) [4]

Спасибо Ламер, все нормально заработало, есть еще пара вопросов, почему перед буленами принято ставить F, и кроме флагов средствами GDI нельзя заставить двигать обьект при одновременно двух и более нажатых клавишах? спасибо.


 
Developer   (2004-07-01 22:16) [5]

if fUpKeyPressed=True and FRightKeyPressed = True then
begin
if moveB.Top>=2 then begin
moveB.Top:=moveB.Top-5;
end;
if moveB.Left<=414 then begin
moveB.Left:=moveB.Left+5;
end;
Когда вот это в таймере то порождаеться Ексцепшен, не пойму что не так написал, пока по диагонали просчитать не удаеться..


 
Глеб ©   (2004-07-02 04:07) [6]


> Для двигания кнопок по форме нет ничего лучше двух мышек!


Я пробовал подкючать 2 мышки. Не помогает.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
3-1087924309
Piter
2004-06-22 21:11
2004.07.18
Как искать в базе без учета регистра букв?


1-1088675282
dimon_programmer
2004-07-01 13:48
2004.07.18
Доступ к папке Windows


6-1084803819
Dead MAZDAI
2004-05-17 18:23
2004.07.18
Как "резать" баннеры в браузерах?


3-1087874804
SnapIn
2004-06-22 07:26
2004.07.18
Непонятная ошибка в MSSQL......


6-1084549441
Nic2
2004-05-14 19:44
2004.07.18
Запуск exe по сети




   Наверх