AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Größenanpassung durch OS verhindern
Thema durchsuchen
Ansicht
Themen-Optionen

Größenanpassung durch OS verhindern

Ein Thema von sILeNt heLLsCrEAm · begonnen am 3. Mär 2013 · letzter Beitrag vom 4. Mär 2013
Antwort Antwort
sILeNt heLLsCrEAm

Registriert seit: 19. Dez 2012
13 Beiträge
 
Delphi 11 Alexandria
 
#1

Größenanpassung durch OS verhindern

  Alt 3. Mär 2013, 20:53
Nabend Leute...

Ich hab da mal folgendes Problem mit meiner Anwendung.
Und zwar bei einer Standard-Auflösung wird diese ordnungsgemäß angezeigt. D.h. alle Bitmaps, Labels etc. befinden sich an den Stellen wo sie hingehören. Siehe dazu auch Bild 1 (Normal.jpg)
Wird jetzt allerdings in z.B. Windows 7 per Rechtsklick auf den Desktop -> Anpassen -> Anzeige die Lesbarkeit der Schrift angepasst, z.B. auf 125%, dann sind auch die Bitmaps etc. innerhalb meiner Anwendung verschoben. Siehe dazu auch Bild 2 (DPI125%.jpg)

Gibt es da eine Möglichkeit diese Art und Weise zu unterbinden?

Vielen Dank im vorraus...
sILeNt heLLsCrEAm
Miniaturansicht angehängter Grafiken
normal.jpg   dpi-125.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Größenanpassung durch OS verhindern

  Alt 3. Mär 2013, 21:24
Scaled = False im Formular setzen.
Besser ist es aber seine Programmierung darauf auszulegen auch unter hochauflösenden Displays (Apple Retina lässt grüßen) eine korrekte Darstellung zu erreichen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.883 Beiträge
 
Delphi 12 Athens
 
#3

AW: Größenanpassung durch OS verhindern

  Alt 4. Mär 2013, 08:44
Scaled = False im Formular setzen.
Besser ist es aber seine Programmierung darauf auszulegen auch unter hochauflösenden Displays (Apple Retina lässt grüßen) eine korrekte Darstellung zu erreichen.
Scaled := False ;

sorgt zwar dafür das die Komponenten nicht skaliert werden (was einem zum Teil ja das ganze Layout zerschlägt, weil Delphi das irgendwie nicht ganz richtig macht),
aber leider sind die Fonts dennoch größer....

d.h.
man muss selbst für ein Skalieren der Controls sorgen. so dass das Layout dabei nicht zermatscht wird.

den faktor mit dem zu skalieren ist ermittelt man mit

Screen.PixelsPerInch/96


Es wäre auch möglich statt die Controls zu skalieren die Font.height mit dem Kehrwert zu skalieren
96/Screen.PixelsPerInch

Aber da im letzten Schritt das Ergebnis immer zu runden ist, ist dieses verfahren das "grob körnigere".
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Größenanpassung durch OS verhindern

  Alt 4. Mär 2013, 09:04
Scaled := False ;
So nur im Quellcode. Im DFM schauts anders aus.

sorgt zwar dafür das die Komponenten nicht skaliert werden (was einem zum Teil ja das ganze Layout zerschlägt, weil Delphi das irgendwie nicht ganz richtig macht),
aber leider sind die Fonts dennoch größer....
Wäre mir neu. Wenn dann wird gar nix skaliert. Eigen Komponenten oder dynamischer Aufbau ausgenommen.


man muss selbst für ein Skalieren der Controls sorgen. so dass das Layout dabei nicht zermatscht wird.
Mit "Layoutpanels" die man links/rechts/oben/unten anordnet kann man 90% der Fälle ohne eigenen Quellcode abdecken.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
sILeNt heLLsCrEAm

Registriert seit: 19. Dez 2012
13 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Größenanpassung durch OS verhindern

  Alt 4. Mär 2013, 18:23
Nabend Leute...

Schande auf mein Haupt. Diese Option hab ich entweder komplett außer acht gelassen oder einfach keine Beachtung weiter geschenkt. Hab wohl in erster Linie eine Lösung bei den einzelnen Controls gesucht.
Ich danke euch vielmals.
Im Prinzip reicht mir auch so die Variante das die Mainform, oder besser gesagt, die Controls nicht skaliert werden und grafisch auch zum Hintergrund passen. Also da wo sie hingehören, auf gut deutsch gesagt.
Wenn ich auf die Skalierung reagieren würde müsste ich auch das Hintergrundbild mit skalieren, was irgendwann aber auch zu grafischen/optischen Einbußen führen würde.

Aber wie gesagt, so reicht mir das. Vielen Dank.

MFG sILeNt heLLsCrEAm
  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 15:18 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