怎么样在全选时CheckBox不变,当子节点中有没被选到时,父节点前CheckBox变成灰色
我可以将文字变灰,怎么让前面的CheckBox变灰这个树状菜单是在winfrom中动态生成的,如何将CheckBox变成灰色...
我可以将文字变灰,怎么让前面的CheckBox变灰
这个树状菜单是在winfrom中动态生成的 ,如何将CheckBox变成灰色 展开
这个树状菜单是在winfrom中动态生成的 ,如何将CheckBox变成灰色 展开
展开全部
这是c#中的“属性”
假如某个类中有一个成员变量(字段),一般是不允许外部访问的,为了安全性
如果要访问它,必须通过“属性”来访问,例如:
private int Id; //这是一个成员变量,private表示是私有的,外部不可访问
public int ID
{
get { return id; } //当外部访问“属性”ID时,返回id的值
set { id = value; } //当外部为“属性”ID赋值时,将id赋值为value,value就是外部为“属性”ID所赋的值
}
PS:你可以在set和get中写一些隐藏的逻辑来控制这个访问和赋值的过程,这对外部是不可见的
比如
set {
if(value==0)
id = 1;
else
id=value;
}
这样当外部将ID赋值为0时,id里的值实际上是1 d
假如某个类中有一个成员变量(字段),一般是不允许外部访问的,为了安全性
如果要访问它,必须通过“属性”来访问,例如:
private int Id; //这是一个成员变量,private表示是私有的,外部不可访问
public int ID
{
get { return id; } //当外部访问“属性”ID时,返回id的值
set { id = value; } //当外部为“属性”ID赋值时,将id赋值为value,value就是外部为“属性”ID所赋的值
}
PS:你可以在set和get中写一些隐藏的逻辑来控制这个访问和赋值的过程,这对外部是不可见的
比如
set {
if(value==0)
id = 1;
else
id=value;
}
这样当外部将ID赋值为0时,id里的值实际上是1 d
展开全部
你的灰色是什么意思??没选中还是不能选??
不能选就麻烦点。
如果只是没选中就比较简单了。
如果是没选中你就追问吧
不能选就麻烦点。
如果只是没选中就比较简单了。
如果是没选中你就追问吧
追问
可以选
我要的是 父节点下的子节点如果有没选中的 就显示父节点前的CheckBox为灰色 ,只有全选后,再次加载节点变成黑色
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
显示图片
Tree tree=new Tree(compA[0],SWT.NONE);//创建树
TreeItem item=new TreeItem(tree,SWT.NONE);
item.setText("音乐");
TreeItem child=new TreeItem(item,SWT.NONE);//在此TreeItem上加入图片
TreeItem child1=new TreeItem(child,SWT.NONE);
TreeItem child2=new TreeItem(child,SWT.NONE);
child1.setText("安静");
child2.setText("简单爱");
TreeEditor editor=new TreeEditor(tree);//创建TreeEditor
editor.horizontalAlignment = SWT.LEFT;
editor.minimumWidth = 50;
CLabel lbl = new CLabel(tree, SWT.SHADOW_OUT);//创建控件,显示图片
lbl.setSize(120, 30);
lbl.setBackground(SWTResourceManager.getImage(TestTree.class, "/images/forward.gif"));
editor.setEditor(lbl, child, 0); //为TreeEditor加在child上,child上加入控件lbl,lbl上显示图片
标签器的几个方法中
getImage 返回的是TreeItem之前的图像
getText 返回的是TreeItem的文本
都不能实现这种要求
充满的话 创建一个Canvas 加上addPaintListener事件 重绘Image
final Canvas lbl = new Canvas(tree, SWT.SHADOW_OUT);
lbl.addPaintListener(new PaintListener()
{
public void paintControl(PaintEvent e) {
Image image=SWTResourceManager.getImage(TestTree.class, "/images/forward.gif");
ImageData data=image.getImageData();
ImageData data1=data.scaledTo(lbl.getSize().x, lbl.getSize().y);
Image im=new Image(e.display,data1);
e.gc.drawImage(im,0,0);
im.dispose();
}
});
editor.setEditor(lbl, child, 0);
另外,虚机团上产品团购,超级便宜 你可以看看
Tree tree=new Tree(compA[0],SWT.NONE);//创建树
TreeItem item=new TreeItem(tree,SWT.NONE);
item.setText("音乐");
TreeItem child=new TreeItem(item,SWT.NONE);//在此TreeItem上加入图片
TreeItem child1=new TreeItem(child,SWT.NONE);
TreeItem child2=new TreeItem(child,SWT.NONE);
child1.setText("安静");
child2.setText("简单爱");
TreeEditor editor=new TreeEditor(tree);//创建TreeEditor
editor.horizontalAlignment = SWT.LEFT;
editor.minimumWidth = 50;
CLabel lbl = new CLabel(tree, SWT.SHADOW_OUT);//创建控件,显示图片
lbl.setSize(120, 30);
lbl.setBackground(SWTResourceManager.getImage(TestTree.class, "/images/forward.gif"));
editor.setEditor(lbl, child, 0); //为TreeEditor加在child上,child上加入控件lbl,lbl上显示图片
标签器的几个方法中
getImage 返回的是TreeItem之前的图像
getText 返回的是TreeItem的文本
都不能实现这种要求
充满的话 创建一个Canvas 加上addPaintListener事件 重绘Image
final Canvas lbl = new Canvas(tree, SWT.SHADOW_OUT);
lbl.addPaintListener(new PaintListener()
{
public void paintControl(PaintEvent e) {
Image image=SWTResourceManager.getImage(TestTree.class, "/images/forward.gif");
ImageData data=image.getImageData();
ImageData data1=data.scaledTo(lbl.getSize().x, lbl.getSize().y);
Image im=new Image(e.display,data1);
e.gc.drawImage(im,0,0);
im.dispose();
}
});
editor.setEditor(lbl, child, 0);
另外,虚机团上产品团购,超级便宜 你可以看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
.Net 自身的TreeView不支持三态复选框,可以参考这里的这个TreeView:
http://kb.cnblogs.com/a/1299430/
http://kb.cnblogs.com/a/1299430/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用jstree
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询