Delphi-PRAXiS
Seite 22 von 38   « Erste     12202122 232432     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Delphi "Sydney" (10.4) ist da! (https://www.delphipraxis.net/204400-delphi-sydney-10-4-ist-da.html)

jaenicke 6. Jun 2020 14:54

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

Zitat von dummzeuch (Beitrag 1466603)
Mir ist dieser spezielle Bug zwar noch nicht aufgefallen, aber dass TStringGrid in Delphi 10.4 eine Macke haben muss, habe ich auch schon gesehen (siehe Anhang). Ich habe dann mal für den Bug gestimmt...

Hättest du dafür einmal ein Beispielprojekt?
Es sieht für mich so aus als hättest du DefaultDrawing aktiv und würdest zusätzlich den Text selbst zeichnen, kann das sein? Oder der Text wird dort teilweise doppelt gezeichnet, aber das war mir zumindest nicht aufgefallen.

Wenn es nämlich einen weiteren Bug geben sollte, sollte ich (oder du) das dort ergänzen oder eine neue Meldung aufmachen, je nachdem woran es liegt.

dummzeuch 6. Jun 2020 15:16

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

Zitat von jaenicke (Beitrag 1466608)
Zitat:

Zitat von dummzeuch (Beitrag 1466603)
Mir ist dieser spezielle Bug zwar noch nicht aufgefallen, aber dass TStringGrid in Delphi 10.4 eine Macke haben muss, habe ich auch schon gesehen (siehe Anhang). Ich habe dann mal für den Bug gestimmt...

Hättest du dafür einmal ein Beispielprojekt?
Es sieht für mich so aus als hättest du DefaultDrawing aktiv und würdest zusätzlich den Text selbst zeichnen, kann das sein? Oder der Text wird dort teilweise doppelt gezeichnet, aber das war mir zumindest nicht aufgefallen.

Wenn es nämlich einen weiteren Bug geben sollte, sollte ich (oder du) das dort ergänzen oder eine neue Meldung aufmachen, je nachdem woran es liegt.

Ja, DefaultDrawing ist True.

Und dann gibt es noch einen OnDrawCell Event:

Delphi-Quellcode:
procedure TfmUsesManager.DrawStringGridCell(_sg: TStringGrid; const _Text: string; const _Rect: TRect;
  _State: TGridDrawState; _Focused: Boolean; _Tag: Integer);
var
  cnv: TCanvas;
begin
  cnv := _sg.Canvas;
  if _Text = '' then
    cnv.Brush.Color := _sg.Color
  else begin
    if gdSelected in _State then begin
      if not _Focused then begin
        cnv.Brush.Color := clDkGray;
        cnv.Font.Color := clWhite;
      end;
    end else begin
      if _Tag <> 0  then begin
        cnv.Brush.Color := clYellow;
      end;
    end;
  end;
  cnv.FillRect(_Rect);
  cnv.TextRect(_Rect, _Rect.Left + 2, _Rect.Top + 2, _Text);
end;

procedure TfmUsesManager.sg_AvailDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect;
  State: TGridDrawState);
var
  sg: TStringGrid absolute Sender;
  GridFocused: Boolean;
begin
  GridFocused := sg.Focused or edtUnitFilter.Focused or edtIdentifierFilter.Focused;
  DrawStringGridCell(sg, sg.Cells[ACol, ARow], Rect, State, GridFocused, 0);
end;
Es mag an den +2 in cnv.TextRect liegen. Kann sein, dass die in Delphi 10.4 nicht mehr passen, warum auch immer, denn in den früheren Versionen gab es das Problem nicht. Ich habe noch nicht versucht, es zu debuggen.

Uwe Raabe 6. Jun 2020 15:22

AW: Delphi "Sydney" (10.4) ist da!
 
Der Code für DefaultDrawing hat sich in der Tat geändert. OwnerDraw Events, die auf DefaultDrawing aufbauen, müssen mit hoher Wahrscheinlichkeit angepasst werden.

Daniel 6. Jun 2020 16:03

AW: Delphi "Sydney" (10.4) ist da!
 
Ist ein bestätigter und bereits korrigierter Bug - die Korrektur wird in Update 10.4.1 enthalten sein.
Wenn es eilig ist, kann die korrigierte Unit auch vorab hier bezogen werden:
https://quality.embarcadero.com/browse/RSP-29402

striderx 6. Jun 2020 18:08

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

Zitat von Daniel (Beitrag 1466614)
Ist ein bestätigter und bereits korrigierter Bug - die Korrektur wird in Update 10.4.1 enthalten sein.
Wenn es eilig ist, kann die korrigierte Unit auch vorab hier bezogen werden:
https://quality.embarcadero.com/browse/RSP-29402

Ist das ggf. derselbe Bug wie RSP-28821?

jaenicke 6. Jun 2020 18:38

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

Zitat von Daniel (Beitrag 1466614)
Ist ein bestätigter und bereits korrigierter Bug - die Korrektur wird in Update 10.4.1 enthalten sein.
Wenn es eilig ist, kann die korrigierte Unit auch vorab hier bezogen werden:
https://quality.embarcadero.com/browse/RSP-29402

Interessant... zwei Wochen nach meiner Bugmeldung am 20.05. wird der Bug zwei Mal erneut gemeldet und direkt bearbeitet, dort wurde aber nicht auf den vorherigen Bug in 10.3 und früher hingewiesen und rumms, nun steht dort eine Unit als Lösung zur Verfügung, die wieder den alten Bug enthält... :evil:

Nun führt er schon eine lokale Variable für das Rechteck ein und dann macht er doch wieder die übergebene Variable ARect kaputt bevor sie an OnDrawCell übergeben wird (so war es bis 10.3 schon)...

jaenicke 8. Jun 2020 12:45

AW: Delphi "Sydney" (10.4) ist da!
 
Ergänzung:
Mein Einwand wurde einbezogen und nun eine meiner Meinung nach an der Stelle fehlerfreie Version der Unit Vcl.Grids bereitgestellt. :thumb:

Zitat:

Zitat von dummzeuch (Beitrag 1466611)
Ja, DefaultDrawing ist True.

Dann solltest du selbst auch nicht Text ausgeben. Wenn du das möchtest, solltest du DefaultDrawing auf False stellen, damit der Text nicht doppelt gezeichnet wird.

Zitat:

Zitat von dummzeuch (Beitrag 1466611)
Es mag an den +2 in cnv.TextRect liegen. Kann sein, dass die in Delphi 10.4 nicht mehr passen, warum auch immer, denn in den früheren Versionen gab es das Problem nicht. Ich habe noch nicht versucht, es zu debuggen.

Ja, in 10.4 wird der Text nun zentriert ausgegeben, so dass man mit einfachen Offsets den Text nicht mehr immer deckungsgleich hinbekommt (+6 statt +2 wäre in der Standardgröße korrekt als Offset). Deshalb solltest du DefaultDrawing auf False setzen, dann kannst du den Text ausgeben wo du möchtest.

OlafKr 10. Jun 2020 13:57

AW: Delphi "Sydney" (10.4) ist da!
 
An Andreas Hausladen: Wird es auch wieder die DDevExtensions für Delphi 10.4 geben?

himitsu 10. Jun 2020 14:56

AW: Delphi "Sydney" (10.4) ist da!
 
Vermutlich (er hat es angekündigt), aber erst wenn die Community-Edition raus ist, da er nur Diese hat. (sonst arbeitet er nicht mehr mit Delphi und daher lohnt sich der Kauf nicht)
[edit] oder früher, wenn er gefragt hat (siehe Nachfolgend)

Uwe Raabe 10. Jun 2020 15:30

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

Zitat von himitsu (Beitrag 1466972)
Vermutlich (er hat es angekündigt), aber erst wenn die Community-Edition raus ist, da er nur Diese hat. (sonst arbeitet er nicht mehr mit Delphi und daher lohnt sich der Kauf nicht)

Muss er ja auch nicht kaufen: https://www.delphipraxis.net/1466308-post18.html
Zitat:

Zitat von MEissing (Beitrag 1466308)
- Jederzeit kann Andreas eine Lizenz von mir bekommen.....



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:03 Uhr.
Seite 22 von 38   « Erste     12202122 232432     Letzte »    

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