Delphi-PRAXiS
Seite 1 von 3  1 23      

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/)
-   -   [FMX] UI wird nicht sauber gezeichnet (https://www.delphipraxis.net/190545-%5Bfmx%5D-ui-wird-nicht-sauber-gezeichnet.html)

Darlo 14. Okt 2016 14:16

[FMX] UI wird nicht sauber gezeichnet
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

leider passiert es in meiner Anwendung vermehr, dass die Oberfläche nicht sauber gezeichnet wird und unsichtbare Ränder von TLayouts oder TLabels als schwarzer Strich angezeigt werden.
Bis jetzt ist dieses Verhalten nur unter Windows zu sehen. IOS und OS X werden richtig dargestellt. Kennt jemand das Problem bzw. hat eine Lösung hierfür?

Gruß

Mavarik 14. Okt 2016 16:58

AW: [FMX] UI wird nicht sauber gezeichnet
 
Zitat:

Zitat von Darlo (Beitrag 1350887)
leider passiert es in meiner Anwendung vermehr, dass die Oberfläche nicht sauber gezeichnet wird und unsichtbare Ränder von TLayouts oder TLabels als schwarzer Strich angezeigt werden.

hmm übel...

Hab ich noch nie gesehen,,,

Auf "allen" Rechnern?
Altes Windows oder alter Grafiktreiber?
Dynamisch erzeugt oder per OI?

In TestApp nach zu vollziehen?

Mavarik

Darlo 14. Okt 2016 18:40

AW: [FMX] UI wird nicht sauber gezeichnet
 
Ist ein Windows 10 System, alle Grafiktreiber aktuell. Das Problem tritt auf diversen Rechnern auf, von Windows Xp - Server 2012. Auch als Webanwendung mit Virtual UI das selbe Problem.
Vermute dass es an dem Style liegt, den ich aus XE 7 übernommen habe. Allerdings verschwinden die Fehler wenn ich zum Beispiel den Fokus auf ein Edit setze, zumindest meistens. Da manchmal das UI fehlerfrei ist kann es aber eigentlich nicht am Style liegen, oder?

Die Controls werden zur Laufzeit auf das Main-Form geholt, jedoch nicht dynamisch erzeugt.

himitsu 14. Okt 2016 19:27

AW: [FMX] UI wird nicht sauber gezeichnet
 
Hast du mal versucht Top/Left ein bissl zu verschieben?
z.B. um 0,5

Ändert sich da der Rand der Labels?
Aber wenn es die selbe Farbe ist, dann hätte ich gedacht, dass sich die gesamtfarbe nicht ändert, selbst wenn da das Blau des Labels mit dem des Hintergrundes verrechnet wird.

Ich hatte schon "unscharfe" Linien und Schrift und konnte den Effekt durch minimales Verschieben mindern.

Darlo 17. Okt 2016 18:45

AW: [FMX] UI wird nicht sauber gezeichnet
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bis jetzt hab ich leider noch keine Lösung gefunden, dafür aber ein neues Problem. Sobald ich das UI Skaliere (Controls vergrößere) tauchen u.a. bei Tedit unschöne Linien auf.
http://www.delphipraxis.net/attachme...1&d=1476726298
Ich bin mir sicher dass das selbe Problem hier im Forum bereits besprochen wurde, finde nur leider den Thread nicht mehr.

bra 18. Okt 2016 08:53

AW: [FMX] UI wird nicht sauber gezeichnet
 
Ich hatte gestern bei einem Kunden ein seltsames Phänomen, da wurden Teile der GUI unserer Windows-App plötzlich schwarz. Ich vermute das ist ein Treiber-Problem. Ich habe dann bei der Verknüpfung unter Kompatiblität mal die Designs und visuellen Stile deaktiviert, seitdem tritt das nicht mehr auf. Vielleicht hilft das bei dir auch?

Darlo 18. Okt 2016 10:32

AW: [FMX] UI wird nicht sauber gezeichnet
 
Liste der Anhänge anzeigen (Anzahl: 2)
Die Fehler treten nur auf wenn form.scale.x und y ungleich 1 ist.
Ich skaliere wie folgt:

Delphi-Quellcode:
procedure TfrmMain.FormResize(Sender: TObject);
var
  scaleX, scaleY, scaleFaktor: double;
begin

  if (frmMain.Height > 712) and (frmMain.Width > 1024) then
    begin
      //Für eine gleichmäßige Skallierung den kleineren Wert ermitteln
      scaleX := frmMain.ClientWidth/1024;
      scaleY := frmMain.ClientHeight/712;
      scaleFaktor := max(min(scaleX, scaleY),1);

      frmMain.laMain.Scale.X := scaleFaktor;
      frmMain.laMain.Scale.Y := scaleFaktor;
    end
  else
    begin
      scaleX := frmMain.ClientWidth/1024;
      scaleY := frmMain.ClientHeight/712;
      scaleFaktor := max(min(scaleX, scaleY),0.6);

      frmMain.laMain.Scale.X := scaleFaktor;
      frmMain.laMain.Scale.Y := scaleFaktor;
    end;

end;
Anbei eine Testanwendung. Wäre nett wenn jemand kurz testen könnte ob der Fehler bei ihm auch auftritt.

http://www.delphipraxis.net/attachme...1&d=1476783277

Mavarik 18. Okt 2016 10:46

AW: [FMX] UI wird nicht sauber gezeichnet
 
Schick bitte mal den Source zum testen...

Darlo 18. Okt 2016 11:53

AW: [FMX] UI wird nicht sauber gezeichnet
 
Code wollte ich anhängen, leider ist mir Delphi nach dem compilieren abgestürzt. Und jetzt... bekomme ich es in einer Testanwendung nicht mehr reproduziert.

Der schöne Günther 18. Okt 2016 11:57

AW: [FMX] UI wird nicht sauber gezeichnet
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier wenigstens ein Screenshot von mir


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz