Problem z aktywnością formularza

0

W standardzie jak kliknie się na jakieś okno to już się zaznacza i robi aktywne, ale jak zrobić żeby mój program nie reagował na aktywność?

Chodzi mi o to że jak na niego kliknę żeby nawet nie próbował się zaznaczyć po prostu żeby nie reagował jak się na niego kliknie.
Próbowałem zmienić Enabled formularza na False ale to nie pomogło.

Pozdrawiam Krzysztof [cya]

0

masz takie zdarzenie onactivate, moze pokombinuj cos z tym?

0

Dzięki ale już próbowałem wszystkiego: oncreate, onactive, onshow.

Ale chodzi mi o to że jak mam pewien program a na tym programie uruchamia się mój program i gdy kliknę na okienko mojego programu to te moje okienko się aktywuje,a ma nie reagować na to zadanie.

Chciałesz zrobić, że jak się aktywuje to je później zdeaktywować a mi nie oto chodziło tylko o to żeby nawet się nie próbowało aktywować.

0

To moze przechwytywanie komunikatow?
/O to chidzlo - przechwytujesz i blokujesz :D

0

Chyba bardziej blokada danego komunikatu.
Ale z tym by był gorszy problem [???]

0

Może inaczej jak zmylić system żeby klikając na mój formularz system myślał że jest przezroczysty (na niby w tym miejscu ma region).

0

To znów ja, wpadłem na pewny pomysł. :d

Robię tak:

private
   procedure Aktywny(var Msg: TWMNCActivate); message WM_NCActivate;

procedure TForm1.Aktywny(var Msg: TWMNCActivate);
begin
 DefaultHandler(Msg);
 If Msg.Result = WA_CLICKACTIVE Then
  Msg.Result := WA_INACTIVE;
 If Msg.Result = WA_ACTIVE Then
  Msg.Result := WA_INACTIVE;
end;

Ale to coś nie bardzo skutkuje może wiecie jak to naprawić? :|
Albo może ktoś ma podobną blokadę komunikatu aktywności i podzielił by się tą wiedzą?

Z góry dziękuję za odpowiedź. [browar]

1 użytkowników online, w tym zalogowanych: 0, gości: 1