Hier der genaue/komplette Grund für die unterschieldiche Darstellung:
Delphi-Quellcode:
if CheckPerMonitorV2SupportForWindow(
Handle)
then
PPI := FCurrentPPI
else
PPI := 0;
LStyle.DrawElement(Canvas.Handle, Details, R,
nil, PPI);
Aber der eigentliche Grund ist natürlich, das DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 erst mit Windows 10 erfunden wurde und Windows 7 das nicht kennen kann.
Lösung: Wenn Programm in Windows < 10 ausgeführt, dann kein PerMonitorV2 verwenden
Ist das ein Bug in Delphi?
Falls ja, ist der schon gemeldet?
Falls nein, könnte den jemand der sich besser damit auskenn als ich melden?
Grüße
TurboMagic