Thema: Delphi TStringGrid

Einzelnen Beitrag anzeigen

michael.cohrs

Registriert seit: 11. Nov 2005
Ort: Hamburg
130 Beiträge
 
#1

TStringGrid

  Alt 23. Mai 2008, 14:30
Hallo zusammen,

ich weiß, bestimmt eine Anfängerfrage aber mir fällt die lösung nicht ein

ich möchte beim Selectieren von Zellen einer Stringgrid die Rahmenfarbe mit der
Selectierfarbe überschreiben, weiß aber nicht wie ich das schnell lösen kenn, hier mal ein kurzer
Auszug des Quelltextes

Delphi-Quellcode:
procedure TfrKalender.sgCalenderDrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  sText : String;
begin
  With sgCalender,canvas do
  begin
    if (gdFixed in State) then
    // fixen Zellen
      Brush.Color:= clBtnFace
    else
    if (ARow Mod 2 = 0) then
    begin
    // Zeilen mit gerader Zeilenzahl
      Brush.Color:= $00F9FDD7;
      Font.Color:= clWhite;
    end
    else
    //Zeilen mit ungerader Zeilenzahl
      Brush.Color:= clWhite;
    if (ACol = 1) or (ARow = 0) then
      sText :=Cells[Acol,ARow];
    if sText = 'Sa.then
    begin
      Font.Color := $004080FF;
      Font.Style := [fsBold];
    end;
    if sText = 'So.then
    begin
      Font.Color := clRed;
      Font.Style := [fsBold];
    end;
    if (gdSelected in State) then
    begin
[b]// hier sollen die Linien der Zellen durch die Hintergrundsfarbe ersetzt werden!![/b]
      Brush.Color := $00B9B9FF;
      Pen.Color := clWhite;
      label1.Caption := inttostr(acol);
    end;
     FillRect(rect);
    // Text zeichnen
    TextOut(Rect.Left + 2, Rect.Top + 2, sgCalender.Cells[ACol, ARow]);
  end;
end;

Für einen schnellen Tipp wäre ich sehr dankbar.

Viele Grüße

Michael
Michael Cohrs
  Mit Zitat antworten Zitat