Probier mal das oder du schaust mal bei Torry.net nach easysize eine Komponente.
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
const breite=1280; {Auflösung, unter der das Fenster erstellt wurde}
hoehe=960;
var schrift: integer;
begin
schrift := pixelsperinch-96;
if screen.width>breite then begin
if schrift>0 then
{für große Schriften}
ScaleBy(round(((screen.width/breite)*100)-((screen.width/breite-1)*100)),100)
else
{für kleine Schriften}
ScaleBy(round(((screen.width/breite)*100)),100);
end
else begin
if screen.width=breite then
ScaleBy(round(((screen.width/breite)*100)-schrift),100)
else begin
if schrift>0 then
{für große Schriften}
ScaleBy(round((100-(breite/screen.width-1)*100)-(breite/screen.width-1)*100),100)
else
{für kleine Schriften}
ScaleBy(round((100-(breite/screen.width-1)*100)),100);
end;
end;