Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
Мишка Косолапый :)
285 / 255 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
1

Перенести управление стрелками на управление WASD

05.08.2013, 16:10. Показов 4280. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне нужно чтобы в игре вместо стрелок управление осуществлялось WASD и при этом сами WASD не нажимались в игре.

Для блокировки нажатия клавиш я использовал это:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(handle, 65, 0, 65);
RegisterHotKey(handle, 87, 0, 87);
RegisterHotKey(handle, 68, 0, 68);
RegisterHotKey(handle, 83, 0, 83);
end;
 
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnregisterHotKey(handle, 65);
UnregisterHotKey(handle, 87);
UnregisterHotKey(handle, 68);
UnregisterHotKey(handle, 83);
end;
Чтобы отловить нажатие клавиши W я делал так:
Delphi
1
2
3
4
5
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
  if msg.hotkey=87 then
 
end;
Добавив это:
Delphi
1
2
private
    procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
Но нужно также чтобы удерживалось нажатие стрелки столько сколько будет задерживаться W.
А тут нету разницы нажал или отпустил кнопку.
Посоветуйте как выйти из такого положения?
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.08.2013, 16:10
Ответы с готовыми решениями:

Гонки на Delphi. Управление стрелками
Доброго времени суток! Нужно сделать управление машинкой с помощью стрелок. Код прописала, но он не...

Движение объекта (квадрата) по экрану, управление клавишами-стрелками и WASD
Всем доброго времени суток! Всё, что нужно от программы: двигать квадрат размером 20*20 кв....

[Unity 4.3.1] Как изменить управление WASD на сенсорный джойстик?
Скачал движок Unity 4.3.1 с поддержкой 2D, скачал демку "Unity Projects 02: 2D Platformer", но она...

Управление стрелками C++
Написал программу, работает. Но вопрос в том, что когда нажимаю на стрелки, мой символ только...

1
177 / 149 / 43
Регистрация: 14.08.2008
Сообщений: 1,289
06.08.2013, 20:52 2
нагуглил
Delphi
1
2
3
4
5
функция GetKeyState позволяет определить нажата ли та или иная клавиша в данный момент времени и включена или выключена клавиша переключатель в данный момент времени: 
 
      function GetKeyState(
        nVirtKey: Integer //код виртуальной клавиши (ASCII таблица)
      ): SHORT;
0
06.08.2013, 20:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.08.2013, 20:52
Помогаю со студенческими работами здесь

Управление стрелками
Здравствуйте. Помогите пожалуйста. Есть класс, работает как надо, если он является основным....

Управление стрелками на Android
Добрый день форумчане. Мучаюсь... не могу ни как реализовать управление стрелками по осям X и Y под...

Управление стрелками клавиатуры
Нужно присвоить действия при нажатии стрелок на клавиатуре. Пояснения Unity не смог понять....

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru