| Форум| Гостевая| Ссылки| Программы| Исходные тексты| Наши партнеры|
   
| Главная| Рассылки| Услуги| Библиотека| Новости| Авторам| Программистам| Студентам|
delphi c++ assembler
 
Как запретить окну быть активным? [D6, Win2k, WinXP]

Чтоб невозможно было с помощью клавиатуры (и/или мышки) установить окно в фокус ввода. Только по hotkey, скажем, разрешить.
Или, как вариант, чтоб этот самый фокус сразу же терялся - передавался обратно тому окну, которое было верхним до воздействия. Какие могут быть тут подводные камни?


Song©   (26.02.02 10:00)

Как вариант на onShow этого окна переводить фокус на другое окно, но тогда открывать его по Show


Виктор Щербаков ©   (26.02.02 10:17)

EnableWindow(Form1.Handle, false);


Dimka Maslov©   (26.02.02 10:21)

Перехватывай сообщение WM_MOUSEACTIVATE

type
 TForm1 = class(TForm)
  ...
 private
  procedure WMMouseActivate(var Message: TMessage); message WM_MOUSEACTIVATE;
 end;

 ...

procedure TForm1.WMMouseActivate(var Message: TMe! ssage);
begin
 inherited;
 Message.Result:=MA_NOACTIVATE; // Запретить передачу фокуса окну
end;

надо и wm_activate перехватывать


Rambler's Top100 Rambler's Top100

©  Adept Design Studio

Используются технологии uCoz