Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TWebBrowser, EdgeIfAvailable und Windows Zoom 125% (https://www.delphipraxis.net/215611-twebbrowser-edgeifavailable-und-windows-zoom-125-a.html)

looseleaf 5. Aug 2024 10:32

TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Liebe Gemeinde,

hat jemand von euch eine Ahnung, was schief laufen kann, wenn wir einen TWebBrowser mit EdgeIfAvailable auf einem Form haben, das bei Windows-Zoom von 125% den Edge komplett wo anders darstellt als er sein sollte. Konkret haben wir ein Form mit einigen Panels und in einem davon auf der echten UI Seite ist der TWebBrowser. Aber der Edge wird ziemlich mittig über das ganze Formular dargestellt, allerdings in der richtigen Größe.
Stelle ich auf IEOnly um, ist er dort, wo er hingehört. Mit AutoScale des Forms haben wir experimentiert, auch mit den Align-Properties des Panels.

Hat jemand irgendwelche Ideen?

Bernhard Geyer 5. Aug 2024 13:56

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Was passiert wenn du statt den Umweg über den TWebbrowser direkt mit TEdgeBrowser arbeitest?

Tronik 6. Aug 2024 08:16

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Hallo, ich bin ein Kollege von looseleaf und habe es mal mit dem TEdgeBrowser probiert, leider ist der Anzeigefehler noch immer da.

Tronik 9. Aug 2024 08:33

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Ich habe mal ein bisschen mit den TWebBrowser und EdgeBrowser experimentiert, und da ist mir aufgefallen, dass dieser Fehler nur auf Windows 10 reproduzierbar ist und nicht auf Windows 11.
Der Fehler wird wahrscheinlich mit Delphi 12 zusammenhängen.

looseleaf 12. Aug 2024 09:39

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Ich fasse zusammen: Delphi 12.
1) Neue VCL Anwendung
2) Panel drauf, das nicht den gesamten Client bedeckt
3) TWebBrowser mit Edge als Engine (oder TEdgeBrowser) auf das Penale mit alClient
4) Im FormShow ein Navigate des Webbrowsers, damit er auch angezeigt wird

Windows 10 versetzt bei 125% Windows-Zoom den Edge, Windows 11 zeigt den Browser dort an, wo er hin gehört.

Stimmt das so, @Tronik?

Tronik 12. Aug 2024 12:07

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
@looseleaf, Ja das stimmt!
Bezüglich des Windows-Zoom und dem TWebBrowser/EdgeBrowser habe ich herausgefunden, dass die Manifest DPI-Unterstützung in den Projektoptionen, für das falsche Anzeigen des WebBrowsers im Panel verantwortlich ist.

Projekt -> Optionen -> Anwendung -> Manifest -> DPI-Unterstützung

Ich habe die DPI-Unterstützung von "GDI-Skalierung" auf "Über Monitor v2" geschaltet.

Dadurch wurde der Anzeigefehler auch auf Windows 10 behoben.

Der schöne Günther 26. Nov 2024 09:34

AW: TWebBrowser, EdgeIfAvailable und Windows Zoom 125%
 
Ich hatte, in Delphi 10.4, jetzt genau das gleiche Problem:

Windows 10, 125 DPI-Skalierung.
  • Ein TWebBrowser mit Modus = EdgeIfAvailable stellt eine Seite völlig verschoben und abgeschnitten dar
  • Ein Austausch von TWebBrowser durch TEdgeBrowser hat das Problem behoben

In den "What's new" changelogs oder in Embarcaderos Bugtracker konnte ich nichts dazu finden.

Das Anwendungs-Manifest war "System". Ein Wechsel auf "perMonitorV2" hatte keine Besserung gebracht, nur ein Austausch von TWebBrowser gegen TEdgeBrowser.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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