![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Vinchkovsky |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 98 Пол: Мужской Реальное имя: Andriy Репутация: ![]() ![]() ![]() |
Первый раз создаю игрушку на Дельфи, и возникло несколько вопросов, с которыми я не встречался прежде:
1) Как сделать обработчик нажатий клавиш? То есть, жму влево- обьект движется влево и т.п. Использую код типа: procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); c keypress, keyup, keydown, но у меня лишь меняется фокус формы. 2) Как сделать прозрачность некоторых частей рисунков? В общем, есть три варианта: а) Сделать маску (прочитал в интернете); б) Анализировать пиксели фона; (сам придумал) в) Использовать векторную графику; (пишет в книге) Может есть какой-нибуть более простой способ? Если нет, прошу обьяснить вариант в) (подсказать редактор, нюансы и т.д.) В чем суть игры: справа - большое окно с фоном, который меняется с уровнями, снизу и сверху - всякие кораблики ![]() ОЧень надеюсь на помощь ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата у меня лишь меняется фокус формы. Form1.KeyPreview, конечно в True не установил? Установи, тогда нажатия клавиш будут обрабатываться... Больше ничего сказать не могу, потому что неизвестно, как именно ты перерисовываешь объект потом...Цитата Как сделать прозрачность некоторых частей рисунков? По-моему, в Drkb было что-то с этим связанное... |
Vinchkovsky |
![]()
Сообщение
#3
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 98 Пол: Мужской Реальное имя: Andriy Репутация: ![]() ![]() ![]() |
Цитата Form1.KeyPreview, конечно в True не установил? Установи, тогда нажатия клавиш будут обрабатываться... Больше ничего сказать не могу, потому что неизвестно, как именно ты перерисовываешь объект потом... Спасибо, первый раз работаю с клавиатурой. Цитата По-моему, в Drkb было что-то с этим связанное... Разобрался на примере "Самолет летит по небу" ____________________________________________ Еще вопросик - это фича или глюк : иногда при редактировании кода, когда дописываю дополнительный текст всередине какой-нибудь строки, он не "вставляется", "передвигая" то, что за ним; а "заменяет" тот код, что идет далее. Помогает лишь перезапуск. ![]() |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Это фича... Чтобы ее отключить, достаточно нажать на кнопку Insert на клавиатуре (т.е. перейти из режима замещения в режим вставки).
|
![]() ![]() |
![]() |
Текстовая версия | 8.07.2025 3:39 |