Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.826 Beiträge
 
Delphi 12 Athens
 
#91

AW: Delphi "Sydney" (10.4) ist da!

  Alt 28. Mai 2020, 22:48
So sieht das Rechteck aus, das an OnDrawCell übergeben wird... den Hintergrund von Zellen im Stringgrid zu füllen wird daher aktuell amüsant...
Das liegt daran, dass das ARect dort für die Textausgabe modifiziert wird und dann an inherited übergeben wird, wo das Event OnDrawCell ausgelöst wird. Das ist der Grund weshalb es sehr schlechter Programmierstil ist die übergebenen Parameter einer Methode zu verändern. In unseren eigenen Anwendungen deklarieren wir diese schlicht auch als const, so dass das gar nicht möglich ist (und bei manchen Datentypen schneller).

Es bleibt nur die Vcl.Grids Unit zu kopieren und zu korrigieren (einfach statt ARect zu modifizieren eine lokale Variable einführen).
Da war vorher ein Bug drin, durch den das Rechteck 4 Pixel weiter rechts startete (gleiche Ursache), nun ist es noch schlimmer...
Ist dieses Problem schon in QP erfasst?
  Mit Zitat antworten Zitat