AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TDBGrid

Ein Thema von -187- · begonnen am 27. Jan 2011 · letzter Beitrag vom 28. Jan 2011
Antwort Antwort
Seite 1 von 2  1 2   
-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#1

TDBGrid

  Alt 27. Jan 2011, 22:06
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:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
Wenn die die Zeile auskommentiere habe ich das Problem nicht. Strange!

Jemand ne Idee?
  Mit Zitat antworten Zitat
WM_CLOSE

Registriert seit: 12. Mai 2010
Ort: königsbronn
398 Beiträge
 
RAD-Studio 2009 Pro
 
#2

AW: TDBGrid

  Alt 27. Jan 2011, 22:17
Welches problem genau??
Und bitte die Delphi Tags benutzen (Die mit dem Römerhelm)
  Mit Zitat antworten Zitat
-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#3

AW: TDBGrid

  Alt 27. Jan 2011, 22:20
Oops Ja also das die ersten beiden Spalten FETT dargestellt werden ist keine Absicht. Ich verstehe nicht warum das passiert. Es ist aufjedenfall ungewollt
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: TDBGrid

  Alt 28. Jan 2011, 01:15
Oops Ja also das die ersten beiden Spalten FETT dargestellt werden ist keine Absicht. Ich verstehe nicht warum das passiert. Es ist aufjedenfall ungewollt
Das wird nicht FETT durch das Font-Attribut BOLD sondern das wird zweimal gezeichnet und beim internen Zeichnen wird da ein kleiner Offset hinzugerechnet. Man sieht also wegen dem Versatz anscheinend FETT
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#5

AW: TDBGrid

  Alt 28. Jan 2011, 06:21
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
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#6

AW: TDBGrid

  Alt 28. Jan 2011, 07:48
vor dem Schreiben ein Fillrect aufrufen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#7

AW: TDBGrid

  Alt 28. Jan 2011, 09:06
Mit "Vor dem Schreiben" meinst du vor dem Zeichnen ?

Edit: Habe es jetzt probiert, hat nichts gebracht.

Code:
DBGrid1.Canvas.FillRect(Rect);

Geändert von -187- (28. Jan 2011 um 09:15 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#8

AW: TDBGrid

  Alt 28. Jan 2011, 09:51
if not (gdSelected in State) then DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#9

AW: TDBGrid

  Alt 28. Jan 2011, 10:07
Hmm ja das hat funktioniert. Danke !

Seltsam.. Jetzt werden nur die nicht selektierten Reihen neu gezeichnet?
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#10

AW: TDBGrid

  Alt 28. Jan 2011, 10:38
was hast Du denn vor?
Ich verstehe nicht was es bringt in DBGrid1DrawColumnCell > DefaultDrawColumnCell aufzurufen ohne Fälle zu unterscheiden....
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf