Wyśrodkowanie okna względem innego

0

A więc mam taki problem. Mam dwie aplikacje: 1 podstawowa i 2 nadrzedna. Pierwsza jest cały czas widoczna ze swoim oknem natomiast musze napisać kod dzięki czemu 2 podczas uruchamiania będzie na srodku pierwszej. Chodzi mi tu tylko o pozycje, dodam, że mam Top Left Height i Width pierwszej aplikacji. Dotychczas napisałem jedynie kod do srodkowania wzgledem poziomu, ktory działa znakomicie, lecz odwrocony go, aby działał w pionie już nie daje porzadanego efektu:

aplikacja2.Left := ((aplikacja1.Width - aplikacja2.Width) div 2) + aplikacja1.Left

gdzie aplikacja 1 to ta na ktorej ma byc aplikacja 2 pośrodku. Mam nadzieje, że wytłumaczyłem to dość sensownie. Pozdrawiam.

0

U mie działa bez problemu, sprawdź czy funkcja która ustawia położenie okien wywołuje się. Ja zrobiłem to na podstawie 2 form w jednej aplikacji.

procedure TForm2.FormShow(Sender: TObject);
begin
Form2.Left:=Form1.Left+(Form1.Width-Form2.Width) div 2; //pion
Form2.Top:=Form1.Top+(Form1.Height-Form2.Height) div 2; //poziom
end;

</wiki>
0

No właśnie logicznie myśląc to powinno działać, a jednak działa tylko wyrównanie w poziomie. W pionie jest w dość dużym stopiu na gorze od formy nadrzędnej :/

0

Ehh to był jednak mój błąd, już wszystko działa :/

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