Вниз
Скачать: 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.02 c
1-1088775006
killer
2004-07-02 17:30
2004.07.18
Transparent в GroupBox


4-1086685199
MU
2004-06-08 12:59
2004.07.18
Информация о ресурсах системы


3-1087899009
min
2004-06-22 14:10
2004.07.18
sql


14-1088488006
Думкин
2004-06-29 09:46
2004.07.18
С днем рождения! 29 июня


1-1088933384
rolex
2004-07-04 13:29
2004.07.18
Как изменить цвет выделения (синий) в Listbox e на другой?




   Наверх