Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Fenstergeometrie (https://www.delphipraxis.net/10615-fenstergeometrie.html)

Nimoee 22. Okt 2003 09:23


Fenstergeometrie
 
Hallo,
folgendes Problem ( oder Erscheinung ):
Bei modernen PCs oder Laptops werden die Bildschirme immer Leistungsfähiger. Auflösungen von 1600..xx sind keine Seltenheit mehr.
Die Folge: der Text wird kleiner. Was macht normaluser dann?
Schrift grösser. Und hier liegt das Problem!
Wenn man über Eigenschaften von Anzeige-->erweitert-->Allgemein die Schriftgrösse von normale Grösse auf grosse Schriftarten oder auf angepasst umstellt, wird die ganze Fentergeometrie von Delphi durcheinandergewürfelt.
Es erscheinen Scrollbalken wo sie nicht sein sollten. Buttons verschwinden...
Gibts doch garnicht wird jemand sagen, ich habs auf drei PCs probiert,
Ergebnis: überall das Gleiche.

Es gibt zwei Lösungsmöglichkeiten:
1.) Ich passe die Fenstergeometrie den Schriftarten an. Viel Arbeit und bringt nur neue Fehlerquellen, oder..

2.) Ich schalte das System um auf kleine Schriftarten.
Das ist der Grund warum der Artikel hier steht.
Wie macht man das?

Nimoee

Ghostwalker 22. Okt 2003 09:36

Re: Fenstergeometrie
 
Zu 1.

Ist zwar viel arbeit, aber die "saubere" Lösung. Bei neuen Projekten kann man gleich von Anfang an das Berücksichtigen und es ist keine Mehrarbeit

Zu 2. Lösung heißt WinAPI (einfach mal in die Win32.HLP gugen und a bisserl suchen).

Ich würde davon allerdings abraten. Es soll Menschen mit Sehschwächen geben, die absichtlich die
große Schriftart eingestellt haben, weil sie sonst nix lesen können.

Ich persönlich würde eine Anwendung, die in meinen Einstellungen rumpfuscht weil sie es anders nicht auf die Reihe bekommen, sofort deinstallieren und wegschmeißen.

Nimoee 22. Okt 2003 10:00

Re: Fenstergeometrie
 
Hallo,

wie willst du das machen? Die Fenstergeometrie verändert sich auf Grund grösserer Zeichensätze und ähnlichem.
Die Auswirkungen sind völlig unvorhersehbar und auch nicht nachvollziehbar. Das Ganze ist auch nicht nur auf Delphi beschränkt.
Wir werden garnichts machen, sondern einfach unter unseren Systemvorraussetzungen den Punkt aufnehmen!

Deine Bemerkung zu: das kann man ja von vorneherein aufnehmen.
Das kostet Geld. Geld zu verschenken haben wir nicht.

Deine Bemerkung zum wegschmeissen: das kann der Kunde nicht, er wird sonst seinen Rundsteuersender nicht bedienen können...

Nimoee

Hansa 22. Okt 2003 10:54

Re: Fenstergeometrie
 
Gestern hatte ich mit DanielB auch eine solche Diskussion. Letzter Stand der Dinge, aus meiner Sicht, war folgender: am besten wäre es wohl, die Einstellungen des Programmes, also der Forms auf 640x480 einzustellen. Das wäre der sicherste Weg. Ich tendiere allerdings dazu, standardmäßig lieber zumindest auf 800x600 zu gehen, damit bei höheren Auflösungen nicht alles zu klein wird.

Eine Alternative wäre vielleicht, die Auflösung beim Programmstart auf einen genehmen Wert zu setzen, der später wieder auf die Standardeinstellung zurückgesetzt wird. Das wäre mir fast noch lieber, aber dann müßte das auch passieren, beim Umschalten zwischen eigenem Programm und Fremdprogrammen. Da wirds nun wieder kompliziert.

Nimoee 22. Okt 2003 11:01

Re: Fenstergeometrie
 
Nochmal, hier gehts nicht um die Auflösung. Das Prog reagiert nur auf die grossen Schriftarten und das völlig unkontrollierbar.

Nimoee

Motzi 22. Okt 2003 11:34

Re: Fenstergeometrie
 
So gut wie alle Steuerelemente von Delphi passen ihre Größe bei großen Schriftarten antsprechende an. Nur die Forms nicht... hatte so ein Problem auch einmal, schau dir einfach mal genau an was nicht passt, welche Forms kriegen Scrollbalken, warum kriegen sie Scrollbalken (welche Steuerelemente haben ihre Größe geändert, so dass sie nicht mehr auf die Form passen) etc. man kann die neue benötigte Größe auch zur Laufzeit berechnen und entsprechend ändern...

Leuselator 22. Okt 2003 11:47

Re: Fenstergeometrie
 
Hi Nimoee,

der einzige Weg der mir einfiele ist ein tränenreicher - man müßte alle Komponenten dynamisch zur Laufzeit sizen und plazieren und dabei einen Skalierungsfaktor benutzen, den man zu Programmstart mit GetSystemMetrics abfragt. Ist in der Tat ein altes Problem und bis dato ist mir noch nix bequemes zur Lösung über den Weg gelaufen.

Such mal in der WinSDK-Hilfe nach Metrics, GetSystemMetrics, SystemParametersInfo(),
aber beware: ist 'n dicker Brocken, das sauber zu basteln.

Gruß Tim

Nimoee 22. Okt 2003 12:33

Re: Fenstergeometrie
 
Hallo,

danke, das hilft mir jetzt erstmal etwas weiter. Mich tröstet nur, dass die VB Progger bei uns das gleiche Problem haben ( hihi ).

Rainer

Ghostwalker 22. Okt 2003 16:58

Re: Fenstergeometrie
 
Hi,

also...wenn ihr gleich die Formulare so gestaltet das sie mit großen Schriftarten klar kommen (z.B. in dem der Programmierer das ganze unter der einstellung "große Schriftart" designed) dann ist das problem gelöst. Klar sieht das ganze dann mit kleinen Schriftarten sehr ... luftig aus, aber du hast das Problem nicht mehr. Und das das mehr Geld kostet nehm ich dir nicht ab. Dem Programmierer kanns egal sein, ob er mit großen oder kleinen Schriftarbeiten designed.


ok...wußte nicht das ihr das Monopol auf Rundsteuersender habt. :mrgreen: :mrgreen:

Nimoee 23. Okt 2003 06:20

Re: Fenstergeometrie
 
Hi Ghostwalker,

leider geht das so nicht! Wenn du genauer hinschaust wirst du bemerken, dass die Schriftarten (win2k, winxp) frei skalierbar sind.... ( mehr brauch ich wohl nicht zu sagen ).

Das Problem mit den Kosten:
Jede Zeile Code kostet Geld. Unsere Programme besitzen durchschnittlich 50 und mehr Fenster. Wie soll ich da, ohne Kosten, eine Geometrieanpassung durchführen?

Aber trotzdem, der Tip mit der Entwicklung mit eingestellter grosser Schriftart ist Weltklasse.
Warum kommt man auf die einfachsten Dinge nicht selber.

Ich danke dir
Nimoee


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:57 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