Jedna z form zawsze na wierzchu (PROBLEM)

0

Mam program z dwoma formami i chcę żeby jedna z nich (form3) była zawsze na wierzchu w stosunku do wszystkich programów (tak jak ma np głowne okno GaduGadu).
Bezskutecznie próbowałem:
1.
w on create -----> <font color="green">formstyle:=fsStayOnTop;</span>
Tutaj jedyne co osiągnołęm to że form3 jest nad form1 :(
2.
w on create ------> <font color="blue">SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0); </span>
A tutaj nie zauważyłem żadnego efektu.

Co należałoby zmienić?
A może jest inne rozwiązanie???
[???] [glowa]

0

Ja po prostu w ObjectInspektorze ustawiłem wartość FormStyle na fsStayOnTop i wszystko działa..
Żadnych procedur

0

Chyba cały problem polega na tym że ja chce żeby zawsze na wierzchu była FORM<font color="red">3</span> . Natomiast formą główną jest FORM<font color="red">1</span> . I dając <font color="red">fsStayOnTop</span> dla FORM<font color="red">3</span> powoduję to że jest na wierzchu dla formy głónej (form1) natomiast w stosunku do innych programów NIE JEST NA WIERZCHU.

[???] [???] [???]

Spróbuj zrobić :

  • stwórz dwie formy
  • w View Source wpisz form2.show;
  • w ObjectInspectorze daj na fsStayOnTop <font color="red">DLA FORM2</span>
  • uruchom
    U mnie Form2 jest tylko wyżej niż form1 , co do calej reszty jest pod spodem ! [???] :(
0

zamień w pliku projektu :

begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.Run;
end.

na

begin
Application.Initialize;
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

0

Dzieki AndRew , hula aż miło .
Tylko w jak tu w takim przypadku jeszcze zrobić , żeby aktywna była form1.
Wpisałem w poniżej form1.show; ale to nie uaktywnia form1.

Pozdrawiam !!

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