AGB  ·  Datenschutz  ·  Impressum  







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

Skalierungsfaktor Win11 mit Delphi XE ermitteln

Ein Thema von norwegen60 · begonnen am 23. Apr 2025 · letzter Beitrag vom 25. Apr 2025
Antwort Antwort
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
529 Beiträge
 
Delphi 12 Athens
 
#1

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 23. Apr 2025, 21:46
Geschafft, wenn auch anders als gedacht. Ich hätte den Skalierungsfaktor ja benötigt, um ein mit

Delphi-Quellcode:
lPictureView := TFrxPictureView(frpStandalone.FindObject('rpim03Chart'));
  if (lPictureView <> nil) then
    lPictureView.Picture.Assign(FChart.TeeCreateMetafile(True, Rect(0, 0, Round(lPictureView.Width), Round(lPictureView.Height))));
in ein FastReport eingebundes Chart auch bei geänderter Bildschirmskalierung korrekt darzustellen.
Nachdem ich im Hauptformular die Unit XPMan eingebunden habe, war nichts weiter mehr nötig. Das Chart wird jetzt auch mit Skalierungsfaktor 225 korrekt (in voller Größe) angezeigt

Danke
Gerd
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#2

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 23. Apr 2025, 23:17
Wenn ich mich richtig erinnere, ist das einzige, was die Unit XPMan tut, ein Manifest einzubinden.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#3

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 24. Apr 2025, 06:33
Das ist richtig. Aber unter Delphi XE konnte man das Manifest auch schon in den Projektoptionen aktivieren, da bin ich mir sehr sicher. Standardmäßig war es auch aktiv.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
529 Beiträge
 
Delphi 12 Athens
 
#4

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 24. Apr 2025, 08:08
Wenn ich mich richtig erinnere, ist das einzige, was die Unit XPMan tut, ein Manifest einzubinden.
Ja, aber was mich überrascht hat, ist dass ich keine Manifest-Datei erstellen musste und auch keine habe.

Im Anhang wie der FastReport vor und nach Einbindung aussieht.
Das Problem mit der Skalierung hatte ich übrigens auch bei QuickReport. Ein Grund für den Umstieg auf FR. In QR wird aber immer noch falsch skaliert

Das ist richtig. Aber unter Delphi XE konnte man das Manifest auch schon in den Projektoptionen aktivieren, da bin ich mir sehr sicher. Standardmäßig war es auch aktiv.
Ich habe es nirgends gefunden. Nur die Laufzeit-Themes, die aber auf die Skalierung kein Einfluss hatten.
Angehängte Grafiken
Dateityp: jpg J5cb59SOlo.jpg (50,2 KB, 20x aufgerufen)
Dateityp: jpg a50ZyWJzo8.jpg (49,6 KB, 18x aufgerufen)
  Mit Zitat antworten Zitat
BlueStarHH
Online

Registriert seit: 28. Mär 2005
Ort: Hamburg
868 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 24. Apr 2025, 08:16
Das Problem mit der Skalierung hatte ich übrigens auch bei QuickReport. Ein Grund für den Umstieg auf FR. In QR wird aber immer noch falsch skaliert
Du musst in QuickReport eine Option setzen, dann sollte das klappen. Habe ich mal irgendwo gelesen, ich weiß leider nicht mehr wo und wie die hieß. Nur dass es sie gibt.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#6

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 24. Apr 2025, 08:43
Ich habe es nirgends gefunden. Nur die Laufzeit-Themes, die aber auf die Skalierung kein Einfluss hatten.
Komisch, ich hätte gedacht, dass dass beides die notwendigen Einstellungen als Manifest ablegt.

Bei neueren Delphiversionen kann man das in den Projektoptionen besser steuern.

Dann würde ich eher ein eigenes Manifest verwenden.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 24. Apr 2025, 09:47
Ja, in XE gibt es einen Haken in den Projekt-Optionen.

In nachfolgenden Delphis ist dort noch hinzugekommen,
dass man UAC-Modus (Administrator), DPI-Awareness und UI-Access wählen kann (außerdem wird die OS-Kompatibilität angegeben und der UI-Style/GDI-Version6 ist auch immer aktiv),
sowie, dass man dort alternativ eine eigenes Manifest-Datei angeben kann.



Ja, die Komonente TXPManifest, welche man auf die Form pappen kannte, macht nichts anderes, als die Unit einzubinden (danach kann man das nutzlose Dinge wieder löschen),
und die Unit XPMan bindet einfach nur eine Manifest-Resource eine (nur UI-Style, bzw. GDI/DLL-Version enthalten)

Natürlich kann man das alles abschalten und so oder so ein eigenes Manifest nutzen (früher und heute),
wo man, für dieses Problem hier, eben bei DPI-Awareness etwas Passendes wählt.
Alles Wichtige dazu lässt sich im Forum finden.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
529 Beiträge
 
Delphi 12 Athens
 
#8

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 25. Apr 2025, 08:17
OK, ich habe es eher zufällig gefunden. Man kann ins Formular die Komponente TXPManifest einbinden.
Aber wie gesagt, es hat auch gereicht im Mainform die Unit XPMan einzubinden.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#9

AW: Skalierungsfaktor Win11 mit Delphi XE ermitteln

  Alt 25. Apr 2025, 09:43
Diese Komponente ist leer. Die dient nur dazu, dass die IDE automatisch diese Unit einbindet, wenn man die Komponente auf das Formular legt, wie hinitsu schon schrieb.

Interessant wäre dennoch der Vergleich der Manifeste, wenn es mit dem aus den Projektoptionen nicht geht.
Sebastian Jänicke
AppCentral
  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 20:47 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