Einzelnen Beitrag anzeigen

Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#2

Re: Aktuell markierte Zeile in TStringgrid sichtbar machen..

  Alt 26. Aug 2003, 14:34
oben habe ich das für ein Zeichen gezeigt und nun kommt das gleiche nur mit einem Bild
Also hier der Source:
Delphi-Quellcode:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
var
  aIcon : TIcon;
  aRect : TRect;
  IconHeight : Integer;
begin
  IconHeight := 16;

  {Bild entfernen}
   aRect := Stringgrid1.CellRect(StringGrid1.Col, StringGrid1.Row);
  aRect.Left := 0;
  //das hier muss evtl angepasst werden, das passte irgendwie beim Testen nciht so super...
  aRect.Right := IconHeight + 2;
  aRect.Bottom := aRect.Bottom - 1;
  aRect.Top := aRect.Top + (Stringgrid1.RowHeights[aRow] - IconHeight) div 2;

  Stringgrid1.Canvas.Brush.Color := Stringgrid1.FixedColor;
  Stringgrid1.Canvas.FillRect(aRect);

  {Bild hinzufügen}
  aIcon := TIcon.Create;
  aIcon.LoadFromFile('c:\test.ico');

  aRect := Stringgrid1.CellRect(aCol, aRow);
  aRect.Left := 0;
  aRect.Right := IconHeight;
  aRect.Top := aRect.Top + (Stringgrid1.RowHeights[aRow] - IconHeight) div 2;

  Stringgrid1.Canvas.StretchDraw(aRect, aIcon);
end;
Ich denke der Source ist recht selbst erklärend.
Nur der Pfad, IconHeight und die markierte Zeile müssen angepasst werden.
Viel Spaß damit

[edit=Daniel B]Delphi-Tags eingefügt. Mfg, Daniel B[/edit]
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
Alexander
  Mit Zitat antworten Zitat