AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Formdarstellung abhängig von Windowsfont

Ein Thema von iphi · begonnen am 23. Nov 2009 · letzter Beitrag vom 23. Nov 2009
Antwort Antwort
iphi

Registriert seit: 13. Feb 2009
262 Beiträge
 
Delphi 7 Personal
 
#1

Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 08:16
Hallo,

ich habe folgendes Problem:
Ich habe meine Delphi7-Forms im klassischen Windows-Style und mit normaler Windows-Schriftgröße designed. Einige Controls habe ich mit Anchor Bottom an den unteren Fensterrand fixiert.
Wenn Anwender mit hochauflösenden Monitoren Windows auf große Fonts umschalten (und ggf. andere Styles aktivieren), dann rutschen solche Controls u.U. aus dem sichtbaren Form-Bereich heraus.
Auch ist dann die Plazierung der anderen Controls nicht mehr stimmig.

Gibt es für dieses Problem eine Lösung, ohne alle Controls ständig dynamisch zu plazieren (riesen Programmieraufwand)?
  Mit Zitat antworten Zitat
Progman

Registriert seit: 31. Aug 2007
Ort: 99974 MHL
695 Beiträge
 
Delphi 10.1 Berlin Starter
 
#2

Re: Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 09:58
Dieses Problem hatten wir auchmal, als eine E-Mail mit einem Screenshot beim Support einging, auf dem das ganze Programm total "verschraubt" war
Seitdem wird beim Programmstart die eingestellte Schriftart überprüft und gegebenenfalls einfach ein Hinweis angezeigt, dass das Programm die Einstellung "kleine Schriftarten" erfordert.
Natürlich könnte man nach Überprüfung auch versuchen, alles umzurechnen. Aber auf Grund der geringen Zahl, wo dieses Problem auftauchte, haben wir uns diesen Mehraufwand erspart und begnügen uns mit einem schlichten Hinweis.
Karl-Heinz
Populanten von Domizilen mit fragiler, transparenter Aussenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
(Wer im Glashaus sitzt sollte nicht mit Steinen werfen)
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.798 Beiträge
 
Delphi 12 Athens
 
#3

Re: Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 10:02
Machen wir genauso...soll ja aber mit WPF ühüüberhaupt kein Problem mehr sein.

Sherlock
Oliver
  Mit Zitat antworten Zitat
iphi

Registriert seit: 13. Feb 2009
262 Beiträge
 
Delphi 7 Personal
 
#4

Re: Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 10:35
Zitat:
eingestellte Schriftart überprüft
Wie kann ich die abprüfen?

Was bedeutet WPF
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#5

Re: Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 10:36
Das Problem mit den Ancors und anderen Positionierungsproblemen ist, daß die VCL diese nicht anpaßt, wenn die Unterschiede schon vor Erstellen/Laden der Form existieren.

Genauso ein Problem ist, wenn die Rahmen größer sind, da Delphi zum Erstellen die äußere Fenstergröße und nicht die des Clientbereichs nutzt

Für Letzteres reicht es aber, wenn man alles in ein Panel verfrachtet und dieses Panel auf alClient einstellt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Progman

Registriert seit: 31. Aug 2007
Ort: 99974 MHL
695 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

Re: Formdarstellung abhängig von Windowsfont

  Alt 23. Nov 2009, 11:07
Eingestellte Schriftart überprüfen:
Delphi-Quellcode:
unit CheckF;

interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

  function SmallFonts : Boolean;
  procedure ChckFonts;

implementation

function SmallFonts : Boolean;
var dc: hdc;
begin
  dc:= GetDC(0);
  Result := (GetDeviceCaps(dc, LOGPIXELSX) = 96);
  ReleaseDC(0, DC)
end;

procedure ChckFonts;
begin
  if not SmallFonts then begin
    if MessageDlg('Dieses Programm erfordert die Einstellung "Kleine Schriftarten"! Soll es trotzdem gestartet werden?',
     mtWarning,[mbYes,mbNo],0)=mrNo then Halt(0);
  end;
end;

end.
ChckFonts in die *.dpr-Datei, bevor die Application intialisiert wird.
Karl-Heinz
Populanten von Domizilen mit fragiler, transparenter Aussenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
(Wer im Glashaus sitzt sollte nicht mit Steinen werfen)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:08 Uhr.
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