![]() |
TDBGrid
Hey, ich habe grade ein Darstellungsproblem.
Mein System: -Windows 7 -Delphi2010 Ich habe eine Datenbank Anwendung und benutzte ein DBGrid zur Darstellung der Daten. Ich habe 10 Spalten. Mit folgendem Code werden die Daten der ersten beiden Spalten FETT markiert wenn ich sie selektiere. Ich hatte schonmal ein ähnliches Problem... Das hing mit dem Aero Style von Windows 7 zusammen.
Code:
Wenn die die Zeile auskommentiere habe ich das Problem nicht. Strange!
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState); begin DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); end; Jemand ne Idee? |
AW: TDBGrid
Welches problem genau??
Und bitte die Delphi Tags benutzen (Die mit dem Römerhelm) |
AW: TDBGrid
Oops ;) Ja also das die ersten beiden Spalten FETT dargestellt werden ist keine Absicht. Ich verstehe nicht warum das passiert. Es ist aufjedenfall ungewollt ;)
|
AW: TDBGrid
Zitat:
|
AW: TDBGrid
Hmm das klingt logisch aber warum wird es 2 mal gezeichnet und wie kann ich das umgehen ? In älteren Anwendungen habe ich das immer so gemacht :roll:
|
AW: TDBGrid
vor dem Schreiben ein Fillrect aufrufen.
|
AW: TDBGrid
Mit "Vor dem Schreiben" meinst du vor dem Zeichnen ?
Edit: Habe es jetzt probiert, hat nichts gebracht.
Code:
DBGrid1.Canvas.FillRect(Rect);
|
AW: TDBGrid
Delphi-Quellcode:
:?:
if not (gdSelected in State) then DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
|
AW: TDBGrid
Hmm ja das hat funktioniert. Danke ! :P
Seltsam.. Jetzt werden nur die nicht selektierten Reihen neu gezeichnet? |
AW: TDBGrid
was hast Du denn vor?
Ich verstehe nicht was es bringt in DBGrid1DrawColumnCell > DefaultDrawColumnCell aufzurufen ohne Fälle zu unterscheiden.... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:43 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