3个回答
展开全部
就是TreeView做的...前面的选择框是2种不同的图片: 1.选择状态图,2.未选择状态图
放一个ImageList控件加载这两种图片,并设置TreeView的Images属性为这个ImageList.
然后在TreeView.OnMouseDown里写上如下的代码
procedure Tform1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
AItem: TTreeNode;
begin
if htOnIcon in TreeView1.GetHitTestInfoAt(X,Y) then
begin
AItem := TreeView1.GetNodeAt(X,Y);
if AItem <> nil then
begin
AItem.ImageIndex = 0; //假设你把选择状态的图片放在第1
//AItem.StateIndex = -1;
//AItem.SelectIndex = -1;
AItem.Update;
end;
end;
end;
放一个ImageList控件加载这两种图片,并设置TreeView的Images属性为这个ImageList.
然后在TreeView.OnMouseDown里写上如下的代码
procedure Tform1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
AItem: TTreeNode;
begin
if htOnIcon in TreeView1.GetHitTestInfoAt(X,Y) then
begin
AItem := TreeView1.GetNodeAt(X,Y);
if AItem <> nil then
begin
AItem.ImageIndex = 0; //假设你把选择状态的图片放在第1
//AItem.StateIndex = -1;
//AItem.SelectIndex = -1;
AItem.Update;
end;
end;
end;
展开全部
ox2 :Boolean;
改为
CheckBox1,CheckBox2 :TCheckBox;
然后再创建这两个对象
CheckBox1:= TCheckBox.Create(Self);
CheckBox2:= TCheckBox.Create(Self);
再进行
CheckBox1.AllowGrayed :=true;
CheckBox2.State :=cbChecked;
就可以了
改为
CheckBox1,CheckBox2 :TCheckBox;
然后再创建这两个对象
CheckBox1:= TCheckBox.Create(Self);
CheckBox2:= TCheckBox.Create(Self);
再进行
CheckBox1.AllowGrayed :=true;
CheckBox2.State :=cbChecked;
就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
RzPageControl
RzCheckTree
RzCheckTree
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询