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

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

Как запретить обработку любых действий пользователя?


Страницы:   1 2

Суслик_ ©   (2009-11-12 15:00:00) 

Здравствуйте.

Как запретить обработку любых действий пользователя?
Под действиями понимается кликанье мышкой по кнопкам и горячие клавиши.

Задача в том, чтобы на время работы Application.ProcessMessages не дать пользователю ничего такого нажать - например, ту же alt+f4.


Суслик_   (2009-11-13 10:32:00) [21]

Спасибо, посмотрю.


oxffff   (2009-11-13 09:37:00) [22]

Отрубить пользователю руки и ноги.


Юрий Зотов   (2009-11-13 09:15:00) [23]

> Суслик

Возможно, это:

function BlockInput(fBlockIt: BOOL): BOOL; stdcall; external user32 name 'BlockInput';

procedure TForm1.Timer1Timer(Sender: TObject); // Interval = 5000
const
 Colors: array[boolean] of TColor = (clGreen, clRed);
begin
 FInputBlocked := not FInputBlocked; // Поле формы
 Color := Colors[FInputBlocked]; // Изначально Color = clGreen
 BlockInput(FInputBlocked) // Оп-ля!
end;


Игорь Шевченко   (2009-11-12 20:40:00) [24]

Суслик_   (12.11.09 18:47) [5]

RTFS: Forms.pas


Суслик_   (2009-11-12 18:47:00) [25]

Спасибо, Игорь. Обязательно почитаю, когда найду справку по этой функции.
У тебя, случаем, нет? Можешь кинешь копию из справки? В D2007 она не описана вообще )


Игорь Шевченко   (2009-11-12 16:13:00) [26]

DisableTaskWindows/EnableTaskWindows ?


Дмитрий Белькевич   (2009-11-12 15:41:00) [27]

Я у себя вывешиваю онтоповый сплэш - ждите...


Суслик_   (2009-11-12 15:05:00) [28]

Сергей, ну есть какая-то такая глобальная штука на все программу (это MDI с горой открытых окно, Action и в главной форме и в ребенке), чтобы так


DenyAllActions();
try
  ...
  Application.ProcessMessages();
  ...
finally
  AllowAllActions();
end;


?


Сергей М.   (2009-11-12 15:02:00) [29]


> не дать пользователю ничего такого нажать


Чтобы он ничего не нажимал, надо отобрать у него все кнопки)


> на время работы Application.ProcessMessages


Можно подумать, что тебя кто-то заставляет вызывать этот метод..


Страницы:   1 2

Наверх

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