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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2008, 17:49   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
Восклицание Мышь

Как програмно отключить и включить мышь
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 01.02.2008, 17:56   #2
ruPy
Пользователь
 
Аватар для ruPy
 
Регистрация: 13.12.2007
Сообщений: 11
Восклицание

Это для Delphi.
procedure BlockInput; external 'user32.dll';
//далее пиши в кнопку или куда надо
asm
push 1
call BlockInput
end; //end здесь обязателен!!!

Только он блокирует мышь и клаву, чтоб разблокировать поменяй 1 на 2
В каждом нашем действии есть смысл...Но иногда его трудно найти.
ruPy вне форума Ответить с цитированием
Старый 01.02.2008, 18:01   #3
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

А может на 0 а не на 2?

http://pblog.ru/?p=21
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 01.02.2008, 20:12   #4
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Полностью и мышь и клавиатура не подходит,
Мне хотя бы чтоб на клавиатуре ввод цифр работал
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 01.02.2008, 20:36   #5
AlDelta
Реанимируюсь...
Участник клуба
 
Аватар для AlDelta
 
Регистрация: 19.07.2007
Сообщений: 1,445
По умолчанию

Для Timer, в обработку события OnTimer, добавь следующий код (Interval - 10):

Код:
SetCursorPos(Screen.Width, Screen.Height);
Мышь не отключит, но...

Цитата:
Мне хотя бы чтоб на клавиатуре ввод цифр работал
А можно узнать зачем?
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте.
Правила форума => Правила раздела => Для общего развития => Помощь студентам => Перед тем, как создавать тему, скачайте себе...
P.S.: форум не песочница (с)
название статьи на сайте MS: "Отмена принудительного отключения автоматического запуска в реестре Windows"
AlDelta вне форума Ответить с цитированием
Старый 01.02.2008, 20:47   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вот как вариант для тестирования:
Код:
procedure TForm2.Button1Click(Sender: TObject);
var curpos: TPoint;
    lockrect: TRect;
    n: integer;
begin
//"выключаем" мышку
n:=1; //при 1 мышь неподвижна, другие значения дают ей 
//возможность затравленно дергаться
GetCursorPos(curpos);
lockrect.Right:=curpos.X;
lockrect.Left:=lockrect.Right-n;
lockrect.Bottom:=curpos.Y;
lockrect.Top:=lockrect.Bottom-n;
ClipCursor(@lockrect);
end;

procedure TForm2.Button2Click(Sender: TObject);
var lockrect: TRect;
begin
//"включаем" мышку
lockrect.Left:=0;
lockrect.Top:=lockrect.Left;
lockrect.Right:=GetSystemMetrics(SM_CXSCREEN);
lockrect.Bottom:=GetSystemMetrics(SM_CYSCREEN);
ClipCursor(@lockrect);
end;
mihali4 вне форума Ответить с цитированием
Старый 07.06.2008, 12:02   #7
Иллидан
Форумчанин
 
Регистрация: 16.01.2008
Сообщений: 288
По умолчанию

Цитата:
Это для Delphi.
procedure BlockInput; external 'user32.dll';
//далее пиши в кнопку или куда надо
asm
push 1
call BlockInput
end; //end здесь обязателен!!!
Подскажите, какой модуль надо подключить, что-бы код заработал?
Иллидан вне форума Ответить с цитированием
Старый 07.06.2008, 12:34   #8
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Иллидан, тут модули не надо подключать. Посмотри ссылку, этот код уже обсуждался на форуме:

http://programmersforum.ru/showthread.php?t=20216
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 09.06.2008, 11:23   #9
Zloy_Doomer
Форумчанин
 
Аватар для Zloy_Doomer
 
Регистрация: 25.04.2008
Сообщений: 277
По умолчанию

Цитата:
Сообщение от Иллидан Посмотреть сообщение
Подскажите, какой модуль надо подключить, что-бы код заработал?
Не нада ниче подключать просто пиши
procedure BlockInput; external 'user32.dll'; там где ты обьявляеш созданные тобой процедуры...
Перед implementation и все а потом оставшейся код в твоей процедуре...
it is a good day to die
Zloy_Doomer вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
мышь в паскале. Iceman Паскаль, Turbo Pascal, PascalABC.NET 6 10.03.2008 14:50
Уматная мышь Sibedir Свободное общение 8 21.01.2008 15:27
мышь хвостатая... Аlex Win Api 14 18.01.2008 00:30
Мышь многокнопочная NoName_emaNoN Win Api 9 14.12.2007 14:31
Мышь kl45gp Общие вопросы Delphi 7 16.06.2007 22:47