Jak pobrać programowo dla form1 wielkości TOP i LEFT gdy jest :
form1.position:=poscreencenter;
????
W dalszej kolejności ,znając te wielkości (top i left) , chciałem przesunąć tą formę względem środka ekranu.
A może inaczej można to zrobić???
Jak pobrać programowo dla form1 wielkości TOP i LEFT gdy jest :
form1.position:=poscreencenter;
????
W dalszej kolejności ,znając te wielkości (top i left) , chciałem przesunąć tą formę względem środka ekranu.
A może inaczej można to zrobić???
A co za różnica, czy względem środka ekranu czy jego lewego rogu?
Rozmiar ekranu odczytasz przez Screen.Witdh i Height.
Właśnie zdałem sobie sprawe że troche głupie pytanie zadałem. [wstyd]
Dostałem jakiegoś zaćmienia [wstyd]
Tylko żeby nie było że to ja pisałem :)
Kiedy position jest ustawione na poScreenCenter to formatka sama się wyśrodkowuje. W związku z tym można pobrać wartości top i left oraz width i heght i obliczyć środek ekranu. Oto przykład:
[delphi]
procedure TForm1.Sprawdz;
var
x,y: integer;
begin
x := left + width div 2;
y := top + height div 2;
end;
[delphi]
Zauważ ze używam left, top, width i height bezpośrednio, a to dlatego że jest to procedura formatki w przeciwnym wypadku musiałbyś się odwołać do konkretnej formatki. Ponadto warto użyć div zamiast / ponieważ od ręki dostaniesz wartość bez reszty. Aby zmienić polozenie względem środka ekranu wystarczy ze zmienisz wartości left i top oraz ew. także width i height.
No cóż troche za długo pisałem.