TImage bei high DPI

Rund um die LCL und andere Komponenten
Antworten
frank@schwedler.net
Beiträge: 4
Registriert: Sa 5. Jun 2021, 18:39

TImage bei high DPI

Beitrag von frank@schwedler.net »

Ich habe nach ca. 15 Jahren ohne Pascal/Delphi-Programmierung wieder angefangen zu programmieren und mich für Lazarus entschieden. Ich entwickle ein privates Projekt unter Windows 10 mit 125% Skalierung und einer Bildschirmauflösung von 1920 x 1200. Wenn ich die resultierende exe auf einem Rechner mit 200% und einer Bildschirmauflösung von 2736 x 1824 laufen lassen, dann wird zwar die Form richtig skaliert, aber das enthaltene TImage nicht. Siehe Anhänge!

In den Projektoptionen ist LCL-Skalierung und DPI-Anpassung ausgewählt. Die Form hat AutoSize := False und Scaled := True. Für TImage ist AutoSize := False und Stretch := True, ebenso wie StrechtInEnabled := True und StrechOutEnabled := True. TImage ist genauso groß wie das Picture (50x30).

Was kann ich tun, damit TImage ebenfalls skaliert wird?

Ich habe bereits einige FAQ und Foreneinträge gelesen, komme aber nicht weiter... Habt ihr eine Idee?

Tschüß und viele Grüße,
Frank
Dateianhänge
high DPI
high DPI
Form_highdpi.png (200.54 KiB) 756 mal betrachtet
standard DPI
standard DPI
Form_standarddpi.png (58.17 KiB) 756 mal betrachtet

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TImage bei high DPI

Beitrag von wp_xyz »

Ich hab's mit dem Lazarus-Cheetah ausprobiert und für mich funktioniert es einwandfrei zwischen Win10@96pp und Win7@144ppi - siehe Anhang.
Dateianhänge
image_scaling.zip
(102.46 KiB) 47-mal heruntergeladen

frank@schwedler.net
Beiträge: 4
Registriert: Sa 5. Jun 2021, 18:39

Re: TImage bei high DPI

Beitrag von frank@schwedler.net »

Jetzt klappt es - DANKE!

Was habe ich bei mir geändert? Ich hatte für TImage Align := alCustom und Center := True. Diese habe ich auf die Werte in deinem Programm geändert: Align := alNone und Center := False. Das war's!

Nochmals vielen Dank!

Tschüß,
Frank :D

Antworten