Proporcja Formy i Komponentów

0

Witam mam duży problem z zrobieniem proporcjalnosci w programie. Chodzi mi o to zeby podczas zmienic rozmiar wszystkich komponentów o dowolne k czyli jakąs skale. Zrobiłem cos takiego :

var
i : integer;
begin
Skala := 2;

Form1.Width:=Round(Form1.Width * Skala);
Form1.Height:=Round(Form1.Height * Skala);

For i:=0 to ComponentCount-1 do begin
if (components[i] is TSpeedButton) then begin
(Components[i] as TSpeedButton).Width:=Round((Components[i] as TSpeedButton).WidthSkala);
(Components[i] as TSpeedButton).Height:=Round((Components[i] as TSpeedButton).Height
Skala);
end;
if Components[i].Tag=100 then (Components[i] as TPanel).Height:=Round((Components[i] as TPanel).Height * Skala);
end;
end;

I komponenty odpowiednio zmieniaja swój rozmiar ale nie pozycje czyli zdarza sie tak ze komponent nachodzi na komponent. Trzeba jeszcze ustalic wartosc dla left i top, ale na to nie mam pomysłu i dlatego prosze o pomoc. Z gory wielkie DZIEKI !!!!!!

0

wlasciwosci align,maxwidth,maxheigth sa chyba latwiejsze w uzyciu?

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