怎样为TREEVIEW加上一幅背景图(100分)

  • 主题发起人 主题发起人 mxjwys
  • 开始时间 开始时间
M

mxjwys

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样为TREEVIEW加上一幅背景图,就象网络蚂蚁一样?
 
DELPHI的DEMO里例子啊,效果不是太好,你可以找来看看,就在DEMO目录下[:)]
 
参照下面的代码就行,关键在CustomDraw事件重
procedure TForm1.TreeView1CustomDraw(Sender: TCustomTreeView;
const ARect: TRect; var DefaultDraw: Boolean);
var
x,y,w,h : LongInt;
Bitmap1: TBitmap;
begin
Bitmap1 := TBitmap.Create;
Bitmap1.LoadFromFile('backgray.bmp');
with Bitmap1 do begin
W := Width;
H := Height;
end;
Y := 0;
while Y < Height do begin
X := 0;
while X < Width do begin
treeView1.Canvas.Draw(X,Y,Bitmap1);
Inc(X,W);
end;
Inc(Y,H);
end;
end;

 
背景图加上以后,节点中的字体是白色的,很难看,怎样使它变透明?
 
可以参考 Delphi的Demo程序(例子)
 
我试过自己画,但效果很差,NODE与背景不能融合。
 
用SysTreeView32控件
 
后退
顶部