Einzelnen Beitrag anzeigen

omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: TreeView mit Anzahl der Datensätze im Text

  Alt 15. Aug 2008, 23:39
Hier mal ein Vorschlag...
Delphi-Quellcode:
TForm = class(TForm)
:
private
  { Private-Deklarationen }
  FBitmap:TBitmap;
:
:
procedure TForm.FormCreate(Sender: TObject);
begin
  FBitmap:=TBitmap.Create;
end;

procedure TForm.FormDestroy(Sender: TObject);
begin
  FBitmap.free;
end;

procedure TForm.TreeViewAdvancedCustomDrawItem(Sender: TCustomTreeView;
  Node: TTreeNode; State: TCustomDrawState; Stage: TCustomDrawStage;
  var PaintImages, DefaultDraw: Boolean);
var Rect:TRect;
    Text, Zahl:string;
begin
  Rect:=Node.DisplayRect(true);
  FBitmap.Height:=Rect.Bottom - Rect.Top;
  FBitmap.Width:=Rect.Right - Rect.Left;
  Text:=DeleteCount(Node.Text);
  Zahl:=Node.Text;
  delete(Zahl, 1, length(Text));
  if cdsFocused in State then begin
    FBitmap.Canvas.Font.Color:=clWhite;
    FBitmap.Canvas.Brush.Color:=clActiveCaption;
  end
  else begin
    FBitmap.Canvas.Font.Color:=clBlack;
    FBitmap.Canvas.Brush.Color:=clWhite;
  end;
  FBitmap.Canvas.FillRect(FBitmap.Canvas.ClipRect);
  FBitmap.Canvas.TextOut(2, 1, Text);
  FBitmap.Canvas.Font.Color:=clBlue;
  FBitmap.Canvas.TextOut(FBitmap.Canvas.TextWidth(Text)+8, 1, Zahl);
  Sender.Canvas.Draw(Rect.Left, Rect.Top, FBitmap);
end;
  Mit Zitat antworten Zitat