Einzelnen Beitrag anzeigen

CHackbart

Registriert seit: 22. Okt 2012
260 Beiträge
 
#2

AW: TMainMenu mit aktiviertem GlobalUseGPUCanvas

  Alt 16. Feb 2022, 14:37
Ich beantworte mir das mal selber,

das scheint nicht wirklich in dem Code zu liegen. Wenn man die Unterstützung für DPI deaktiviert, passen die Breiten.


Delphi-Quellcode:
procedure TMenuView.SetBounds(X, Y, AWidth, AHeight: Single);
{$IFDEF MSWINDOWS}
var
  ScreenService: IFMXScreenService;
  Scale: Single;
{$ENDIF}
begin
{$IFDEF MSWINDOWS}
 if GlobalUseGPUCanvas then
 begin
  if TPlatformServices.Current.SupportsPlatformService (IFMXScreenService, IInterface(ScreenService)) then
  begin
    Scale := ScreenService.GetScreenScale;
    AWidth := AWidth * Scale;
    AHeight := AHeight * Scale;
  end;
 end;
{$ENDIF}
 inherited SetBounds(X, Y, AWidth, AHeight);
end;
Im Prinzip hilft obiger Code, aber das scheint nicht korrekt.

Christian

Geändert von CHackbart (16. Feb 2022 um 14:50 Uhr)
  Mit Zitat antworten Zitat