Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
Delphi 7 Enterprise
|
Re: TreeView mit Anzahl der Datensätze im Text
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;
|
|
Zitat
|