AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Schriftart einer Zeile von DBGrid "fett markieren"
Thema durchsuchen
Ansicht
Themen-Optionen

Schriftart einer Zeile von DBGrid "fett markieren"

Ein Thema von TypusMensch · begonnen am 29. Aug 2003 · letzter Beitrag vom 30. Aug 2003
Antwort Antwort
Seite 1 von 2  1 2      
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#1

Schriftart einer Zeile von DBGrid "fett markieren"

  Alt 29. Aug 2003, 16:49
Ich will eine/mehrere Zeilen (nicht Spalten) von einer DBGrid mit der Font.Syle auf fsBold schalten. Leider weiß ich nicht, wie ich das mache. Ich weiß wie ich die Spalte mache:

DBGrid1.Columns[i].Font.Style := [fsBold];

nicht aber eine Zeile....!!!!

Ich hoffe mir kann da schnellstmöglich einer helfen.

Vielen Dank. Mfg Typus
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#2

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 29. Aug 2003, 18:46
Hi,

Du wirst Dich in das OnDrawColumnCell einklinken müssen, und das Schreiben der Daten selbst übernehmen müssen.

Grüsse
Woki
  Mit Zitat antworten Zitat
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 13:31
Oh mein Gott. Da habe ich wiedermal kein Plan von.

Kann wir da jemand kurze Syntax erklären... n kleines Beispiel wäre hilfreich...
  Mit Zitat antworten Zitat
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 13:59
Hab es jetzt so. Klappt aber nicht, wenn ich Prog starte. Sind entweder alle fett markiert oder gar nicht, entsprechend dem was nun am Start im ersten Datensatz steht.

Delphi-Quellcode:
procedure THaupt.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
Var i : integer;
    C: TCanvas;
begin
  if Sender is TDBGrid then
  begin
    C := TDBGrid(Sender).Canvas;
    for i := 0 to Table1.RecordCount do
      begin
      if Table1.FieldByName('Markiert').AsBoolean = True then
         C.Font.Style := [fsBold] else
         C.Font.Style := [];
      end;
    C.FillRect(Rect);
    C.TextRect(Rect, Rect.Left, Rect.Top, Column.Field.AsString);
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 14:09
Hai TypusMensch,

schaue dir doch mal diesen Beitrag in der Code-Library an. Der sollte dir helfen.

Nachtrag:

Hier noch einmal der Code speziell für dein Problem:

Delphi-Quellcode:
procedure TFRM_Main.DBGrid1DrawColumnCell(Sender: TObject;
 const Rect: TRect; DataCol: Integer; Column: TColumn;
 State: TGridDrawState);
begin
 if (Table1.FieldByName('Markiert').AsBoolean) then
  begin
   DBGrid1.Canvas.Font.Style := [fsbold];
  end;
 DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 14:38
Sorry, aber damit kann ich noch weniger was anfangen, weil es sich auf ne StringGrid bezieht.

Worin liegt denn der Unterschied zwischen OnDrawColumnCell und OnDrawDataCell????

Wie gesagt der obenstehende Code kommt dem sehr nah, was ich auch eigentlich will, nur klappt es leider nicht voll und ganz (Problem beschrieben)...
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 14:42
Zitat von OnlineHilfe (AKA F1):
Schreiben Sie keine Ereignisbehandlungsroutine für OnDrawDataCell. OnDrawDataCell ist veraltet und dient nur der Abwärtskompatibilität. Schreiben Sie statt dessen eine Ereignisbehandlungsroutine für OnDrawColumnCell.
Geht mein code denn nicht?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 14:49
Nein, leider nicht. Er startet das Programm, der erste Datensatz, den er gleich liest, das is jetzt Markiert = True, dann sind alle Zeilen fett, is die erste beim ersten datensatz markiert = false, sind alle nicht fett! Ebenfalls das gleiche wenn ich auf einen datensatz klicke, wo markiert = false, dann sind alle datensätze nicht markiert.... umgedreht genauso, bei klicken (also true = alle fett)...

ich will doch aber nicht, dass alle zeilen fett oder alle nicht fett sind. ich will doch abwechseln, dementsprechend, welcher datensatz.markiert true oder false hat.

  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 14:59
Ist Table1 aus wirklich die Datenquelle die mit deinem Grid verbunden ist? Mir ist auch schon passiert das ich mich im DrawCell auf eine falsche Query bezogen habe.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
TypusMensch

Registriert seit: 29. Aug 2003
Ort: Goth-A
182 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Schriftart einer Zeile von DBGrid "fett markieren&a

  Alt 30. Aug 2003, 15:10
Oh Gott.... erst lach ich mir eins ins Fäustchen, wegen Matze's Problem mit dem Browser (HTML-HTM)

siehe Browserproblem

Sorry, aber hatte der DBGrid natürlich auch ne Query zugeordnet... Es tut mir leid...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:30 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