![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запрет нажатия системных клавиш [Delphi, Windows]
ElectriC © (2007-04-05 17:32:00)Начал писать движок на WinAPI.
Возник вопрос:
Как запретить [Ctr]+[Alt]+[Del], [Alt]+[F4], [Alt]+[Tab], [Windows] и прочих системных клавиш - то бишь как это сделано в Quake III и прочих играх?
ElectriC (2007-04-08 19:25:00) [1],
ElectriC (2007-04-08 17:05:00) [2].
ElectriC (2007-04-08 17:04:00) [3]Так я спрашиваю про то, как ОТЛОВИТЬ РЕАКЦИЮ СВОРАЧИВАНИЯ(а не как запретить), какой код вообще надо использовать!
cyborg (2007-04-08 15:45:00) [4]Тебе все советуют не надо этого делать, но ты почему-то настойчиво пытаешься это реализовать. Лучше глюки поищи и исправь в своей игре, чтобы такими способами их скрывать не приходилось.
ElectriC (2007-04-08 15:39:00) [5].
ElectriC (2007-04-07 15:42:00) [6]
> Гораздо проще описать реакцию на сворачивание окна.
Подскажите, какой код хоть.
homm (2007-04-07 14:40:00) [7]>
> А можно по подробней, а то не выходит что-то((
Наиболее подробно в [8] начинается со слов «Убил бы за такое, ей Богу.»
ElectriC (2007-04-07 14:25:00) [8]
> Asteroid © (06.04.07 04:42) [3]
> Отлавливай WM_ACTIVATE.
А можно по подробней, а то не выходит что-то((
ElectriC (2007-04-06 22:28:00) [9]Хех)))
Мистер Т (2007-04-06 15:02:00) [10]> Ctrl+Alt+Tab отключил
читать Ctrl+Alt+Del
сорри...
Мистер Т (2007-04-06 15:01:00) [11]> homm © (06.04.07 12:32) [5]
> Фокус передается, а вот окно не сворачивается и с переднего
> планане уходит.
А, ну так-то да, такой трюк легко получается, если окно назначить "поверх всех окон", но ведь сочетание клавишь работает =)
А вот в CoD - точно сворачивается после Alt+Tab, только что проверил.
> ElectriC © (06.04.07 14:12) [6]
> Вот-Вот!
> IMHO, лучше вообще запретить сворачивание и переключение
> между окнами,
> когда работает игра. Так надёжней, что-ли! Меньше ошибок
> и неполадок будет с программой!
Убил бы за такое, ей Богу.
Нужно нормально программы писать, а не изобретать велосипеды. Гораздо проще описать реакцию на сворачивание окна.
Ну и плюсом, если у тебя игра повиснет (думаешь не зависнет, наивный ???), а ты Ctrl+Alt+Tab отключил, как думаешь, сколько ты минут/часов/дней потратишь на поиски ошибки перезагружая каждый раз компьютер ?
> homm © (06.04.07 14:15) [7]
> А что-бы страну не захлестнуло пьянство, давайте запретим
> легальную алкогольную продукцию
Кстати некоторые пытались =)
homm (2007-04-06 14:15:00) [12]> IMHO, лучше вообще запретить сворачивание и переключение между окнами,
> когда работает игра. Так надёжней, что-ли! Меньше ошибок
> и неполадок будет с программой!
А для увеличения безопасности на автодорогах, давайте выпускать машины без колес. А что-бы страну не захлестнуло пьянство, давайте запретим легальную алкогольную продукцию, и т.д.
ElectriC (2007-04-06 14:12:00) [13]
> Не знаю что ты делааешь не так, но у меня в Q3 тоже не работет
> ничего.Фокус передается, а вот окно не сворачивается и с
> переднего планане уходит. приходится по панели задачь правой
> кнопкой, переместить, дальше стрльчками. Потом возвращаю
> :)
Вот-Вот!
IMHO, лучше вообще запретить сворачивание и переключение между окнами,
когда работает игра. Так надёжней, что-ли! Меньше ошибок и неполадок будет с программой!
homm (2007-04-06 12:32:00) [14]> Почему-то в Q3 (и играх на его движке - CoD, RTCW и т.д.)
> у меня отлично сворачиваются/разварачиваются основное окно
> (реакция на Alt+Tab) и Ctrl+Alt+Del работает и прочая системщина.
> Что я не так делаю ?
Не знаю что ты делааешь не так, но у меня в Q3 тоже не работет ничего.Фокус передается, а вот окно не сворачивается и с переднего планане уходит. приходится по панели задачь правой кнопкой, переместить, дальше стрльчками. Потом возвращаю :)
Мистер Т (2007-04-06 12:27:00) [15]> ElectriC © (05.04.07 20:22) [2]
> Окей! Значит Кармак создаёт кривые и глюченые движки;)))))
Кармак не Бог, а значит не истина в последней инстанции.
> Как запретить [Ctr]+[Alt]+[Del], [Alt]+[F4], [Alt]+[Tab],
> [Windows] и прочих системных клавиш - то бишь как это сделано
> в Quake III и прочих играх?
Почему-то в Q3 (и играх на его движке - CoD, RTCW и т.д.) у меня отлично сворачиваются/разварачиваются основное окно (реакция на Alt+Tab) и Ctrl+Alt+Del работает и прочая системщина. Что я не так делаю ?
Asteroid (2007-04-06 04:42:00) [16]Отлавливай WM_ACTIVATE.
А насчет запретов - фтопку, фтопку.
Лично меня еще не радуют игры без оконного режима :) Не говоря о тех, кто криво переключается в полноэкранный с меньшим разрешением (отчего все окна сдвигаются куда попало).
ElectriC (2007-04-05 20:22:00) [17]Окей! Значит Кармак создаёт кривые и глюченые движки;)))))
Есть ещё вопрос:
Как правильно отловить минимизацию окна?
Ниже приведённый код не помогает:
function WinProc(WinHan : THandle; Msg : UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
Result := 0;
case Msg of
...
WM_SIZE :
If (wParam = SIZE_MAXHIDE) or (wParam = SIZE_MINIMIZED) then
MessageBox(0,'1','My Engine',0) else MessageBox(0,'2','My Engine',0);
...
else Result := DefWindowProc(WinHan, Msg, wParam, lParam);
end;
end;
cyborg (2007-04-05 19:19:00) [18]Это обычно делают по причине глюкавости переключения чудо игры. В газенваген такие игры, которые не дают переключаться.