Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

А можно обработать сразу две клавиши ? [D7, Win95/98]


Developer ©   (2004-07-01 20:29:00) 

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

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


Глеб   (2004-07-02 04:07:00) [1]


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


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


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

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;
Когда вот это в таймере то порождаеться Ексцепшен, не пойму что не так написал, пока по диагонали просчитать не удаеться..


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

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


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

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

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

if FLeftKeyPressed and FUpKeyPressed then ...


default   (2004-07-01 20:35:00) [5]

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


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

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо