![]() |
Programm an Bildschirmauflösung optimal anpassen.
Hallo, hab mal wieder eine Frage,
ich habe in meiner Form.Create folgende Funktion, um den Bildschirm voll asuzufühlen.
Delphi-Quellcode:
Funktioniert auch ganz gut. Jetzt habe ich allerding´s auf meinem
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; 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; |
Re: Programm an Bildschirmauflösung optimal anpassen.
Bitte keine Skalierung von Controls wenn der User nicht Große Schriftart oder ähnliches eingestellt hat. Der Button der Anwendung der bei 1024*768 auf 100*25 gestellt wurde sollte auch unter 1600*1200 die gleiche Pixelgröße haben wenn die Schriftgröße gleich. Alles ander schaut Amateurhaft aus.
Pass die Ausrichtung lieber mit Hilfe von Panels und entsprechenden Alignment an. |
Re: Programm an Bildschirmauflösung optimal anpassen.
Zitat:
|
Re: Programm an Bildschirmauflösung optimal anpassen.
Vielleicht hilft Dir das weiter:
Zitat:
-- Andreas |
Re: Programm an Bildschirmauflösung optimal anpassen.
Zitat:
|
Re: Programm an Bildschirmauflösung optimal anpassen.
Also, Ideen hab ihr ja recht viele und recht schnell. Nur durch die vielen Unterschiede, weiß man natürlich gar nicht, was jetzt die beste Lösung ist.
Also, was ich genau benötige ist, eigentlich genau das was alle guten Programme machen. Sich ohne für den Nutzer einen optischen unterschied zu zeigen, an den Bildschirm anzupassen. Das mit den Anchors, wäre eine Variante, allerdings, habe ich da momentan gar keine Ahnung von wie die genutzt werden. Gut dafür gibt es ja die Hilfe. Mit der VCL Komponente hört sich Momentan relativ einfach an, hatte ich allerdings auch mal von der Skalierung gedacht, die allerdings nicht den von mir gewünschten Erfolg erziehlt hat. Mit den Panal´s, vermute ich, das ich meine Komponenten auf verschiedene Panal´s lege, diesen dann gewisse Plätze zuweise, und grundsätzlich gar nicht´s an den größen der anderen Komponenten ändere. Also wenn ein Button z.b. 120x40 Pixel hat, behält er diese immer bei. Wenn das der Fall ist, ist das ja eigendlich nicht das was ich will, weil ja dann irgendwo im formular freie Flächen entstehen werden. [EDIT] Außerdem vermute ich, das ich einer kleinen Bildschirmauflösung arbeiten müsste, um später mit einer höheren arbeiten zu können. |
Re: Programm an Bildschirmauflösung optimal anpassen.
In der Zeit, in der Du die bisherigen Antworten "benotest", hättest Du Dir z.B. mit der vorgeschlagenen Kompenten selbst ein Bild machen können. Du wärst überrascht, was man damit *erzielt*.
-- Andreas |
Re: Programm an Bildschirmauflösung optimal anpassen.
Die beste Variante ist es über die Alignment und Anchors zu arbeiten. Mit diesen beiden Möglichkeiten brauchst Du Dir keine Gedanken machen, wie groß das Fenster nachher ist. Was macht Deine Scalierung, wenn ich das Fenster soweit verkleinere, dass ich unterhalb Deiner Ausgangsgröße komme ?
|
Re: Programm an Bildschirmauflösung optimal anpassen.
Zitat:
Zitat:
|
Re: Programm an Bildschirmauflösung optimal anpassen.
@Rolf.
Du hast aus meiner Sicht völlig Recht. Allerdings gebe ich den heute üblichen Auflösungsbereich zu bedenken: 24"-Monitoren stellen ohen Probleme 1900x1200 Pixel dar. Das erzeugt riesige Flächen, die gerade bei einfachen Design gar nicht mehr sinnvoll gefüllt werden können. Wenn man hier auch mit Schrift- Skalierung arbeitet, behält das Formular sein Aussehen in allen möglichen Auflösungen oder Formular-Größen. Eine Mindestgröße für Schrift und Size verhindert Unlesbarkeit, kann aber ein Vista-like Thumbview ergeben. Genau das macht die angesprochene Komponente und erzeugt nebenbei bei großen Auflösungen ein seniorenfreundliches Bild ;) -- Andreas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz