读书人

关于Winform Tree怎么将鼠标移到文本

发布时间: 2012-04-17 15:06:33 作者: rapoo

关于Winform Tree,如何将鼠标移到文本时显示Hand,移出时还原?
private void tree_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e)
{
tree.Cursor = Cursors.Hand;
}

private void tree_MouseMove(object sender, MouseEventArgs e)
{
TreeNode tn = this.tree.GetNodeAt(e.X, e.Y);
if (tn == null)
{
Cursor = Cursors.Default;
}
}

代码如上,我想当鼠标离开文本的时候,鼠标还原,而上述的程序在鼠标离开文本的时候并且hover在与文本水平的位置上时,鼠标也是手状的,而我只是想鼠标hover到文本时,才显示手状。
大家可以看看Windows OS Explorer的效果。

请问如何修改上面的代码啊?谢谢~~

[解决办法]

C# code
private void treeView1_MouseLeave(object sender, EventArgs e){    Cursor.Current = Cursors.Default;}private void treeView1_MouseMove(object sender, MouseEventArgs e){    TreeNode node = this.treeView1.GetNodeAt(e.Location);    if (node == null)    {        Cursor.Current = Cursors.Default;        return;    }    Cursor.Current =         e.X < node.Bounds.Left || e.X > node.Bounds.Right ?         Cursors.Default : Cursors.Hand;} 

读书人网 >C#

热点推荐