如何实现只有鼠标放到TreeView节点上时,光标变为手形,离开节点变为默认光标形状。 给每个结点都加上试试!TreeNode1.NavigateUrl=# 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我不是说的B/S中我说是在C/S中使用TreeView Treeview_mousemove(){....} 晕 ,就写个Treeview_mousemove(){....}怎么知道? C/S中使用TreeView啊TreeView 控件规定位置if MOUSE in TreeView 控件规定位置MOUSE .STYLE = you need 1else MOUSE .STYLE = you need 2 晕了,写的看不懂ASP.net中和C/S中的TreeView不太一样吧/// <summary> /// 光标停在节点上时变为手行光标 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tvMain_MouseMove(object sender, MouseEventArgs e) { //获取当前光标上的坐标 TreeNode node = tvMain.GetNodeAt(e.X, e.Y); //如果节点不为空 if (node != null) { //左上角X坐标 int X = node.Bounds.X - 27; //左上角Y坐标 int Y = node.Bounds.Y; //右下角X坐标 int BottomX = X + node.Bounds.Width + 27; //右下角Y坐标 int BottomY = Y + node.Bounds.Height; //判断是否在这个区域内部 if ((e.X >= X && e.Y >= Y) && (e.X <= BottomX && e.Y <= BottomY)) { tvMain.Cursor = System.Windows.Forms.Cursors.Hand; } else { tvMain.Cursor = System.Windows.Forms.Cursors.Default; } } else { tvMain.Cursor = System.Windows.Forms.Cursors.Default; } }我自己写出来了。其中的为什么有个27,Node前面有个图标也要算进去,node.Bounds获取的值不带前面图标的长度。可以根据图标大小改变27这个值。我用着是好用的,不知道还有没有其他的方法 backgroundWorker和progressBar的使用 c#怎么读写Excel文件? DataGridView的值被改变!很简单都过来看看,搞定就结贴了! RDLC报表中统计分组数据用什么表达式 Winform控件,如何能实现这种效果,一句两句说不清,请大家进来看看。 StreamWriter写共享文件时Close()得非常慢,何解? 如何获取动态添加控件的值 两个combobox如何实现二级联动?谢谢 silverlight如何调用软键盘 【开源】ComBoost:Repository实体架构 诚寻C#+WinForm高手合作一项目,急! 异步通信问题
我说是在C/S中使用TreeView
{
....
}
{
....
}
怎么知道?
TreeView 控件规定位置if MOUSE in TreeView 控件规定位置
MOUSE .STYLE = you need 1
else
MOUSE .STYLE = you need 2
/// 光标停在节点上时变为手行光标
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tvMain_MouseMove(object sender, MouseEventArgs e)
{
//获取当前光标上的坐标
TreeNode node = tvMain.GetNodeAt(e.X, e.Y);
//如果节点不为空
if (node != null)
{
//左上角X坐标
int X = node.Bounds.X - 27;
//左上角Y坐标
int Y = node.Bounds.Y;
//右下角X坐标
int BottomX = X + node.Bounds.Width + 27;
//右下角Y坐标
int BottomY = Y + node.Bounds.Height; //判断是否在这个区域内部
if ((e.X >= X && e.Y >= Y) && (e.X <= BottomX && e.Y <= BottomY))
{
tvMain.Cursor = System.Windows.Forms.Cursors.Hand;
}
else
{
tvMain.Cursor = System.Windows.Forms.Cursors.Default;
}
}
else
{
tvMain.Cursor = System.Windows.Forms.Cursors.Default;
}
}
我自己写出来了。
其中的为什么有个27,Node前面有个图标也要算进去,node.Bounds获取的值不带前面图标的长度
。可以根据图标大小改变27这个值。
我用着是好用的,不知道还有没有其他的方法