Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2010, 15:19   #1
bymyny
Пользователь
 
Регистрация: 07.09.2010
Сообщений: 17
Вопрос Запретить нажатие клавиш

Как запретить нажатие нужных клавиш?
например windows + D, Alt + Tab, Ctrl+ Esc...
и как возможно запретить сворачивание окна(приложения)?
bymyny вне форума Ответить с цитированием
Старый 26.10.2010, 16:14   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Отверткой кнопки с клавиатуры подёргай.
Если окна нет, то его и свернуть нельзя. Вот и используй в программе прорисовку поверх рабочего стола. А смысла в запрещении нет, во-первых не всё так просто со спец командами, во-вторых вариантов сворачивания очень много (и не только с помощью клавиатуры).
eoln вне форума Ответить с цитированием
Старый 26.10.2010, 23:06   #3
yasic
Пользователь
 
Регистрация: 27.09.2010
Сообщений: 44
По умолчанию

Цитата:
Как запретить нажатие нужных клавиш?
bymyny почитайте о следующих функциях:
SetWindowsHookEx
UnhookWindowsHookEx

Последний раз редактировалось yasic; 26.10.2010 в 23:09.
yasic вне форума Ответить с цитированием
Старый 27.10.2010, 09:03   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Можно с помошью RegisterHotKey захватить эти клавищи и не отпускать.
Я даже пример дет выкладывал
http://www.programmersforum.ru/showthread.php?t=115848
И иже с ним:
Запрет Принтскрина:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(Handle,0,MOD_ALT,VK_SNAPSHOT);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnregisterHotKey(Handle,0);
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нажатие клавиш свр Общие вопросы по Java, Java SE, Kotlin 2 26.09.2010 18:58
Нажатие клавиш.. KoBRaAndrey Общие вопросы Delphi 3 31.01.2010 18:56
Нажатие клавиш bashkos JavaScript, Ajax 6 23.09.2008 19:01
Нажатие клавиш VanDerKeen Win Api 1 03.06.2007 21:13