Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Auflösung Anpassen (https://www.delphipraxis.net/165725-aufloesung-anpassen.html)

borstenei 12. Jan 2012 20:58

Auflösung Anpassen
 
Nicht gleich wieder gähnen!,ich weiss das dieses Thema hier schon 1000 mal durchgekaut wurde....aber
Gibt es nicht irgendetwas einfaches und ultimatives was das Programm an die entsprechende Auflösung anpasst..?
Ich arbeite in diesem Fall immer mit Panel's klappt dann auch super...bis jemand auf die Idee kommt mein Programm auf einen Netbook zu starten .
Eine Form mit Hohe 800 bekomme ich da nicht untergebracht...Ich habe schon viele Beispiele auspropiert , die hier zum Thema Skallieren beschrieben sind..aber nichts dabei
was wiklich 100 % mit jeder Aulösung funktioniert.
Wenn ich mir Word und Excel ansehe ...dort klappt es doch auch! Dann sollte es doch auch mit Delphi funktionieren.
Bis jetzt habe ich immer die Bildschirmauflösung ermittelt...und mein Progamm entsprechend angepasst..
Delphi-Quellcode:
   if (screen.Width = 1280) and (screen.Height = 1024) then  // dbGrid für 19"
   begin
Bla//
   end;
   if (screen.Width = 1920) and (screen.Height = 1200) then  // dbGrid für 24"
   begin
Bla//
   end;
   if (screen.Width = 1920) and (screen.Height = 1080) then  // dbGrid für 22"
   begin
//
   if (screen.Width = 1280) and (screen.Height = 800) then  // dbGrid für 15" Wide
   begin
//Bla
   end;
aber das sollte doch alles von selber gehen..?

stahli 12. Jan 2012 22:32

AW: Auflösung Anpassen
 
Ich würde eine Kombination aus Align, Anchors und Prozentrechnung (Panel.Height := (Panel.Parent.Height div 4) * 3) o.ä. empfehlen.
Screen.Height auszuwerten ist nicht unbedingt sinnvoll, da die Formulargröße ja nicht die gleiche ist.

borstenei 12. Jan 2012 22:55

AW: Auflösung Anpassen
 
ja ..so habe ich bis jetzt auch immer gemacht...aber das kann nicht die Lösung sein.
Es ist nur angepasste Rechnerei..
Bleib mal bei meinem Beispiel....Form.Height gleich 800....
wie bekomme ich es skalliert wenn es auf einem Netbook laufen soll...? bsp. 1366 x 768

Furtbichler 12. Jan 2012 23:08

AW: Auflösung Anpassen
 
Was soll denn laufen? Ich meine, Du kannst doch dein Formular nicht beliebig skalieren, das sieht einfach schrottig aus. Auch Word auf meinem kleinen Netbook ist eine Krücke. Es geht nur deshalb, weil sich die Menüs selbst nebeneinanderklatschen.

In meinen Augen hat das nix mit Auflösung zu tun, sondern mit der Fähigkeit des Formulars, sich innerhalb des ihm zur Verfügung stehenden Platzes angemessen darzustellen. Hab grad mit einem aktuellen Word rumgespielt und die Breite verändert. Na ja, dann verschwinden eben einige Menüs, toll.

Zeig doch mal einen Screenshot der anwendung, die Du skalieren willst.

borstenei 12. Jan 2012 23:23

AW: Auflösung Anpassen
 
ja klar da gebe ich Dir recht...irgendwo ist schluss!
mit anderen Worten werden Bildschirm-Exoten nicht beachtet!
ich hege immer noch Die Hoffnung dass es doch mal eine einfache Lösung für das Skallieren gibt...
..benutze Delphi seit 1995...damals war das auch schon ein Thema obwohl es nur wenige Monitore gab die sich in der Auflösung unterschieden...

borstenei 12. Jan 2012 23:27

AW: Auflösung Anpassen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Um diese Form handelt es sich....

borstenei 12. Jan 2012 23:31

AW: Auflösung Anpassen
 
Liste der Anhänge anzeigen (Anzahl: 1)
noch mal ein Bild

Sir Rufo 12. Jan 2012 23:35

AW: Auflösung Anpassen
 
Da muss ich ja meinen Vorredner Recht geben :)

Wenn du eine Software entwickelst, dann musst du eben eine Mindest-Auflösung vorgeben, oder eben die Controls im Formular dynamisch anpassen, oder eben mit Scrollbars im Formular arbeiten.

Es bringt niemandem etwas, wenn ein Formular so stark skaliert wird, dass die einzelnen Buchstaben nur noch einen Pixel hoch sind. Das Formular passt zwar auf den Bildschirm, aber der Anwender kann nichts mehr erkennen.

Das reine Abfragen der Screen-Eigenschaften bringt auch nur bedingt etwas, wenn der Anwender z.B. die Taskleiste vergrößert hat oder auch Zusatz-Software laufen hat, die den effektiv nutzbaren Bereich weiter einschränken.

Interessant ist also Screen.WorkAreaXXX für die Anzeige des Formulars (das ist die Größe, die ein maximiertes Formular bekommt)

Aber wo ist denn jetzt da das Problem?
Mach die PageControls scroll-fähig und alles ist in Butter :)

stahli 12. Jan 2012 23:38

AW: Auflösung Anpassen
 
Sieht nicht schlecht aus. :thumb:

Aber Dein Form weiß ja von alleine nicht, welche Teile wichtig sind.
Du kannst z.B. sagen, Dein Fernsehbild soll in der Höhe 30% des Parent haben, aber mindestens 200 Px und Max 400 Px.

Es ist m.E. durchaus am sinnvollsten die Größen im Resize festzulegen sofern die von der Formulargröße abhängen.

FireMonkey bietet m.E. die Möglichkeit, ganze Formulare frei zu skalieren (bedingt geht das ja in der VCL auch).
Aber das selbst in die Hand zu nehmen und sein eigenes Formular optimal zu gestalten, finde ich nicht falsch.


PS: Du kannst Deine Beiträge auch nachträglich editieren und weitere Bilder anhängen (ist lieber gesehen, als mehrfache Beiträge hintereinander).

borstenei 12. Jan 2012 23:51

AW: Auflösung Anpassen
 
Das wollte ich eigentlich nur hören, ihr seid die Experten...macht es beruflich.
Also mache ich eine mindest Auflösung zur Bedingung!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 Uhr.
Seite 1 von 2  1 2   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz