Eso lo he intentadop mil veces y por alguna razon en algunas resoluciones no me funciona.Por ejemplo yoprogramo con una resolucion de 1600X900 y al ejecutarse lo puede hacer enn 1600X900, 1280X1024, 1280*768, 1024*768. Pues bien el la primera no funciona biebn y yo lo realizo: (los compomentes de la pantalla no tiene nada de especial)
Código Delphi
[-]
procedure Tfrmprincipalpista.FormCreate(Sender: TObject);
begin
ScaleForm(frmprincipalmesa,1600,900);
end;
procedure ScaleForm(F: TForm; ScreenWidth, ScreenHeight: LongInt);
begin
F.Scaled := True;
F.AutoScroll := False;
F.AutoSize := False;
F.Position := poScreenCenter;
F.Font.Name := 'Arial';
If (Screen.Width <> ScreenWidth) OR (Screen.Height <> ScreenHeight)
Then
Begin
F.Height := LongInt(F.Height) * LongInt(Screen.Height) div ScreenHeight;
F.Width := LongInt(F.Width) * LongInt(Screen.Width) div ScreenWidth;
F.ScaleBy(Screen.Height,ScreenHeight);
End;
end;
Gracias.