如题
比如tree:
top
aaa(图片一)
bbb(图片二)
比如tree:
top
aaa(图片一)
bbb(图片二)
解决方案 »
- 如何实现一个在输的数字串,自动分隔成每4个数字中间空格显示
- 请教SpeedButton的双击事件
- 请教关于coinitialize,我快疯了
- 如何在DBGrid中画线?我要实现这样的DBGrid...
- 急!我刚开始学,有一个问题,请大家给解答,谢谢!!
- 请问有没有一本电子书是专门介绍异常的?谢谢
- 利用向导创建MDI应用程序框架后,有一个功能是:创建一个子窗体时Windows菜单下会自动添加对应于本子窗体的菜单项,但是为什么在生成的源
- delphi xe5 listview显示数据库的所有数据,求解
- 如何屏蔽win键 和 ctrl+esc 键
- 这个问题怎么解决 急急急
- 图表chart打印的控制方法
- 兄弟姐妹们,急啊,谢谢了
如果要按楼主要求做的话,恐怕只能写控件了
写代码如下:
var
aaa,bbb: TTreeNode;
begin
aaa.ImageIndex := 0;
aaa.SelectedIndex := 0;
bbb.ImageIndex := 1;
bbb.SelectedIndex := 1;
end;
procedure TForm1.TrevUserListCustomDrawItem(
Sender: TCustomTreeView; Node: TTreeNode; State: TCustomDrawState;
var DefaultDraw: Boolean);
var
G1:TBITMAP;
begin
try
G1:= TBITMAP.Create;
if fileexists(EXTRACTFILEPATH(APPLICATION.ExeName)+'\1.BMP') then
G1.LoadFromFile(EXTRACTFILEPATH(APPLICATION.ExeName)+'\1.BMP')
else
g1:=nil;
DefaultDraw:=true;
if Node.Selected then
begin
TrevUserList.Canvas.Font.Color:=clWhite;
IF node.Parent <> nil then begin
if (g1 <> nil) and havideo and (node.Parent.Text='正常') then
TrevUserList.Canvas.Draw(100,Node.DisplayRect(True).Top,G1);
end;
end
else
begin
if Node.StateIndex = 2 then
begin
if (Node.ImageIndex = 6) or (Node.ImageIndex = 10) then
TrevUserList.Canvas.Font.Color:=clRed
else begin
TrevUserList.Canvas.Font.Color:=clGreen;
IF g1 <> nil then begin
if havideo then
TrevUserList.Canvas.Draw(100,Node.DisplayRect(True).Top,G1);
end;
end;
end
else if Node.StateIndex = -1 then
begin
TrevUserList.Canvas.Font.Color:=$00934A46;
TrevUserList.Canvas.Font.Style:=[fsBold];
end
else
TrevUserList.Canvas.Font.Color:=clBlack; end; TrevUserList.Canvas.Textout(Node.DisplayRect(True).Left+2,Node.DisplayRect(True).Top+2,Node.Text);
finally
G1.Free;
end;
end;