AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid, Eigenschaften einer Zelle ändern

Ein Thema von mung · begonnen am 15. Dez 2004 · letzter Beitrag vom 18. Dez 2004
Antwort Antwort
mung

Registriert seit: 20. Mai 2004
8 Beiträge
 
#1

StringGrid, Eigenschaften einer Zelle ändern

  Alt 15. Dez 2004, 14:40
Hi,

Also ich brauch Irgendwas um das Aussehen einzelner Zellen zu veränder, am besten Farblich.

  StringGrid.Cells[x,y].Color:=clRed;//Wäre Perfekt, kann ja aber net gehen
Gruss, mung
  Mit Zitat antworten Zitat
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#2

Re: StringGrid, Eigenschaften einer Zelle ändern

  Alt 15. Dez 2004, 15:00
Delphi-Quellcode:
procedure TForm1.StringGridDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
var
  s: string;
begin
  with (Sender as TStringGrid) do
  begin
    begin
       if (Row=ARow) and (ACol=2) then begin
          Canvas.Brush.Color := clNavy;
          Canvas.Font.Color := clYellow;
       end else begin
          Canvas.Brush.Color := clWhite;
          Canvas.Font.Color := clBlack;
       end;
       if (ACol<2) or (ARow=0) then begin
          Canvas.Brush.Color := clBtnFace;
          Canvas.Font.Color := clBlack;
       end;
       Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, cells[acol, arow]);
       Canvas.FrameRect(Rect);
       s:=Cells[ACol,ARow];
       Canvas.FillRect(Rect); // Zellfarbe zeichnen
       DrawText(Canvas.Handle, PChar(s), Length(s), Rect, DT_SINGLELINE or DT_Center or DT_VCENTER); // Text zentriertend;
    end;
  end;
end;
so zum Beispiel wird jeder Text zentriert, und je nach Reihe oder Spalte kannst Du beliebige Farben einbauen
Georg Peifer
  Mit Zitat antworten Zitat
mung

Registriert seit: 20. Mai 2004
8 Beiträge
 
#3

Re: StringGrid, Eigenschaften einer Zelle ändern

  Alt 15. Dez 2004, 17:05
THX erstmal, aber wie bekomme ich des für eine Zelle hin und im Event: OnSelectCell?
Hab mich leider oben falsch ausgedrückt ich hoffe ihr wisst jetzt was ich meine

Wofür ist eigentlich:  StringGrid.Objects[x,y] Für jeden Kommentar dankbar, mung
  Mit Zitat antworten Zitat
Quake

Registriert seit: 25. Aug 2003
222 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: StringGrid, Eigenschaften einer Zelle ändern

  Alt 18. Dez 2004, 16:29
StringGridDrawCell wird beim Zeichnen des Grids für jede Zelle aufgerufen. Du mußt also nur per if-then oder case-of die Parameter ACol und ARow auswerten.
Mit StringGrid.Objects[x,y] kannst du irgendein Objekt an ein Zelle heften. Ich habe mal damit Checkboxen an die Zelle geheftet und diese in der Zelle anzeigen lassen.

ciao
Quake
  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 17:10 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