Einzelnen Beitrag anzeigen

Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#1

Programm an Bildschirmauflösung optimal anpassen.

  Alt 6. Mär 2009, 13:42
Hallo, hab mal wieder eine Frage,

ich habe in meiner Form.Create folgende Funktion, um den Bildschirm voll asuzufühlen.

Delphi-Quellcode:
var
  HTaskbar: HWND;
  OldVal: LongInt;
begin
oldW := Width;
oldH := Height;
oldX := Left;
oldY := Top;
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
Left := 0;
Top := 0;
Height := Screen.Height;
Width := Screen.Width;
Funktioniert auch ganz gut. Jetzt habe ich allerding´s auf meinem
Laptop eine Auflösung von 1280x1024 und z.B auf meinem Desktop 1024x768.

Wie bekomme ich jetzt hin, das mein Programm sich optimal an die Bildschirmauflösung anpaßt.

Mit der folgenden Code in der Create, ist das zwar möglich höhere Auflösungen zu Zoomen, aber wenn ich z.B. die mit meinem Laptop kompilierte Datei auf meinem Desktop starte, wird ein Teil vom Fenster abgeschnitten.

Delphi-Quellcode:
´
  sWidth := Screen.MonitorFromWindow(Handle).Width / Width;
  sHeight := Screen.MonitorFromWindow(Handle).Height / Height;
  if sWidth < sHeight then
  begin
    ScaleBy(Round(Screen.MonitorFromWindow(Handle).Width * 1.02), Width);
  end
  else
  begin
    ScaleBy(Round(Screen.MonitorFromWindow(Handle).Height * 1.02), Height);
  end;
  WindowState := wsMaximized;
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat