AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Nach markieren im DBGrid keine Schrift sichtbar ?
Thema durchsuchen
Ansicht
Themen-Optionen

Nach markieren im DBGrid keine Schrift sichtbar ?

Ein Thema von Vader · begonnen am 28. Apr 2006 · letzter Beitrag vom 28. Apr 2006
Antwort Antwort
Vader

Registriert seit: 6. Mai 2003
804 Beiträge
 
Delphi 6 Enterprise
 
#1

Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 07:53
Datenbank: Paradox • Version: 7 • Zugriff über: TQuery
hallo,


habe den code stehen im ereigniss BGrid1DrawColumnCell

Delphi-Quellcode:
procedure TForm10.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin

  if query1.FieldByName('Gültig bis Datum').Value <= Date() then
    dbgrid1.Canvas.Font.Color := $000000DF
else
    dbgrid1.Canvas.Font.Color := clblack;

  // falls weder P1 noch P2, dann bleibt die Zeile wie Standard
  dbgrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
jetzt habe ich ein problem wenn ich in der laufzeit eine zeile im DBGrid mit der Maus markiere sehe ich die
schrift nicht mehr, es ist alles blau ???
was ist da schuld ?

mfg vader
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#2

Re: Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 08:05
"Schuld" ist die Kombination aus VCL/Windows-API die im alltäglichen Programmiererleben so praktisch ist Würdest du in den Windowsfarbeinstellungen eine andere Farbe für markierte Elemente nehmen, sähe das Ganze anders aus.

Aber helfen wird wahrscheinlich das hier:
Delphi-Quellcode:
procedure TForm10.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  if not(gdSelected in State) then
  begin
  if query1.FieldByName('Gültig bis Datum').Value <= Date() then
    dbgrid1.Canvas.Font.Color := $000000DF
else
    dbgrid1.Canvas.Font.Color := clblack;

  // falls weder P1 noch P2, dann bleibt die Zeile wie Standard
  dbgrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
  end;
end;
Ist jetzt aus der Erinnerung, müsste aber hinkommen, ansonsten schau dir den Typ TGridDrawState mal in der OH an.
  Mit Zitat antworten Zitat
Vader

Registriert seit: 6. Mai 2003
804 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 09:42
hallo,
das ist etwas besser geworden, wenn ich die ganze zeile markiere ist immer nur bei einen tabellenfeld die schrift
zum lesen wenn ich mit der maus darauf klicke ?

mfg vader
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#4

Re: Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 09:54
Hmm, wie sehen denn deine TDBGrid.Options aus? Ich hab bei mir immer
Code:
[dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit]
Da habe ich so ein Phänomen nicht.

Alleredings nehme ich zum Färben auch einen etwas anderen Weg. Ich färbe nur die Zelle, in der der entsprechende Wert steht und setze nicht die Schriftfarbe, sondern färbe den Hintergrund der Zelle.
  Mit Zitat antworten Zitat
Vader

Registriert seit: 6. Mai 2003
804 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 10:18
hallo,

jetzt funzt es, eine eigenschaft war falsch eingestellt !!!
danke
mfg vader
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#6

Re: Nach markieren im DBGrid keine Schrift sichtbar ?

  Alt 28. Apr 2006, 10:21
Keine Ursache.Und "falsch" ist ja auch relativ, kommt drauf an welche Features dem Benutzer zur Verfügung stehen sollen Ich persönlich schalte aber immer ReadOnly auf true und dgEditing unter Options auf false, da ich das DBGrid zum bearbeiten nicht gerade als besonders geeignet erachte, aber das ist dann wieder persönliche Präferenz.
  Mit Zitat antworten Zitat
Antwort Antwort


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 +1. Es ist jetzt 19:25 Uhr.
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