vb.net treeview 鼠标点击节点时文字颜色,背景的改变
2017-03-29 21:20
2261 查看
首先将TreeView 的DrawMode改为OwnerDrawText,然后再DrawMode事件中写下如下语句:
Private Sub treeView1_DrawNode(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DrawTreeNodeEventArgs) Handles treeView1.DrawNode
Dim foreColor As Color
Dim backColor As Color
If (e.State And TreeNodeStates.Selected) <> 0 Then
foreColor = Color.OrangeRed '鼠标点击节点时文字颜色
backColor = Color.SkyBlue '鼠标点击节点时背景颜色
ElseIf (e.State And TreeNodeStates.Hot) <> 0 Then
foreColor = Color.Green '鼠标经过时文字颜色
backColor = Color.DarkSeaGreen '鼠标经过时背景颜色
Else
foreColor = Me.treeView1.ForeColor
backColor = Me.treeView1.BackColor
End If
e.Graphics.FillRectangle(New SolidBrush(backColor), New Rectangle(e.Bounds.Location, New Size(Me.treeView1.Width - e.Bounds.X, e.Bounds.Height)))
e.Graphics.DrawString(e.Node.Text, Me.treeView1.Font, New SolidBrush(foreColor), e.Bounds)
End Sub
值得注意的还有一点就是需要将 TreeView.HotTracking 属性设置成为True 否则鼠标的经过效果是不会出现的
Private Sub treeView1_DrawNode(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DrawTreeNodeEventArgs) Handles treeView1.DrawNode
Dim foreColor As Color
Dim backColor As Color
If (e.State And TreeNodeStates.Selected) <> 0 Then
foreColor = Color.OrangeRed '鼠标点击节点时文字颜色
backColor = Color.SkyBlue '鼠标点击节点时背景颜色
ElseIf (e.State And TreeNodeStates.Hot) <> 0 Then
foreColor = Color.Green '鼠标经过时文字颜色
backColor = Color.DarkSeaGreen '鼠标经过时背景颜色
Else
foreColor = Me.treeView1.ForeColor
backColor = Me.treeView1.BackColor
End If
e.Graphics.FillRectangle(New SolidBrush(backColor), New Rectangle(e.Bounds.Location, New Size(Me.treeView1.Width - e.Bounds.X, e.Bounds.Height)))
e.Graphics.DrawString(e.Node.Text, Me.treeView1.Font, New SolidBrush(foreColor), e.Bounds)
End Sub
值得注意的还有一点就是需要将 TreeView.HotTracking 属性设置成为True 否则鼠标的经过效果是不会出现的
相关文章推荐
- VirtualTreeview鼠标移动到相应节点时,节点背景颜色发生变化
- jquery鼠标点击改变控件的背景颜色
- VirtualTreeview鼠标移动到相应节点时,节点背景颜色发生变化
- 让鼠标点击有链接的图片文字时颜色不发生改变
- asp.net TreeView中点击父节点的文字,展开子节点
- wpf 设置treeView节点选中后的的文字颜色、节点的背景色以及节点失去焦点后的背景颜色
- 改变treeview中节点的背景颜色和字体颜色
- CSS改变被鼠标选中的文字颜色及背景
- (转)TextView点击后背景颜色、文字颜色改变
- ASP.NET--TreeView中被选中Node改变背景或者字体颜色。
- asp.net GridView控件鼠标移动某行改变背景颜色(方法一)
- 改变选中Treeview的节点的背景颜色
- CSS改变网页中鼠标选中文字背景颜色例子
- CSS实例:鼠标滑过超级链接文字时改变背景颜色
- vb.net treeView的同一个节点第二次点击(连续),不执行事件
- treeview 控件点击父节点所有子节点全部展开代码,改变部分节点颜色
- TextView点击后背景颜色、文字颜色改变
- VirtualTreeview鼠标移动到相应节点时,节点背景颜色发生变化
- asp.net GridView控件鼠标移动某行改变背景颜色(方法一)
- 鼠标经过行时改变行的背景颜色