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

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

мышь вкл/выкл [D5, Win95/98, Win2k]


der ©   (2002-10-23 16:32:00) 

Надо при form.create выключать мышь (ну или покрайней мере курсор), а при destroy -включать.
то что написано в ФАКЕ - не понятно


Pat   (2002-10-27 00:14:00) [1]

>И не давать ей выходить???
Опять к этому и пришли... ClipCursor()


Геннадий   (2002-10-26 21:31:00) [2]

И сделай свою форму StayTop...


F1   (2002-10-25 15:56:00) [3]

А если обрабатывать у формы OnMouseLeave???
И не давать ей выходить???


der   (2002-10-25 06:28:00) [4]


> EnableHadwareInput(Enable:boolean): boolean;

Оно же выключает и мышь и клаву, а ввод с клавиатуры-то надо оставить!


bogachev   (2002-10-24 17:26:00) [5]

Включение и выключение устройств ввода/вывода из программы на Delphi. Это элементарно сделать при помощи API:
EnableHadwareInput(Enable:boolean): boolean;
Enable - требуемое состояние устройств ввода (True - включены, false - выключены). Если ввод заблокирован, то его можно разблокировать вручную - нажать Ctrl + Alt + Del, при появлении меню "Завершение работы программы" ввод разблокируется.

А вот еще интересный прикол.
Включение/выключение монитора программным способом.

Предупреждаю сразу! После того, как вы отключите монитор, просто так вы его уже не включите (хотя это может быть зависит от монитора, я, во всяком случае, не смог). Только после перезагрузки компьютера.

Отключить :
SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 0);

Включить :
SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1);
P.S Взято из FAQ"a и всё прекрасно работает.


Song   (2002-10-24 16:57:00) [6]

ClipCursor()


der   (2002-10-24 16:35:00) [7]


> не давайте ей выходить за пределы формы.

если обрабатывать OnMouseMove,то нифига не помогает: при медленном перемещении мыши - все ОК, но если дернуть руку порезче, то не срабатывает.


Pat   (2002-10-24 14:44:00) [8]

>Winexec("Rundll32.exe mouse,disable",0)
А обратно только ExitWindowsEx(), да и Win2k указана еще..


Edgar   (2002-10-24 13:41:00) [9]

Winexec("Rundll32.exe mouse,disable",0)


Song   (2002-10-24 13:32:00) [10]

не давайте ей выходить за пределы формы.


der   (2002-10-24 13:26:00) [11]

Хм...
А варианты есть?
Мне например, надо, чтобы юзер не мог с моего окна переходить в любое другое. Я выключил всякие стандартные сочетния клавиш (ALT+F4, CTRL+ALT+DEL, и пр). осталось тока мышь заблокировать.


Song   (2002-10-24 09:46:00) [12]

Никак.


der   (2002-10-24 06:13:00) [13]

чтоб не действовала,
а потом чтобы задействовала (а то в ФАКе в статье про скрытые функции rundll есть как выключить мышь, а вот как ее включить после этой команды - ???)


Song   (2002-10-23 17:26:00) [14]

ShowCursor()


Дуся   (2002-10-23 16:56:00) [15]

что значит - выключать?..
чтоб пропадал курсор или чтоб не действовала?


Наверх

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