我想在鼠标悬停在特定的ToolStripButton上时更改用户的光标,但不希望ToolStrip上的其他项目。我该如何设置按钮的光标?如何更改ToolStripButton的光标?
3
A
回答
1
您必须设置Toolstrip.Cursor属性才能更改光标。是的,它会改变所有工具按钮的鼠标光标。
为了解决这个问题,为工具栏上的每个按钮创建一个OnMouseEnter事件,然后将整个工具条的光标设置为该特定按钮所需的光标。
7
由于ToolStripItem不从Control继承,因此它没有Cursor属性。
您可以为MouseEnter事件的形式光标,并恢复形式光标MouseLeave事件,VB范例如下:
Dim savedCursor As Windows.Forms.Cursor
Private Sub ToolStripButton1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton1.MouseEnter
If savedCursor Is Nothing Then
savedCursor = Me.Cursor
Me.Cursor = Cursors.UpArrow
End If
End Sub
Private Sub ToolStripButton1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton1.MouseLeave
Me.Cursor = savedCursor
savedCursor = Nothing
End Sub
更新
这里是在相同的答案C#:
private Cursor savedCursor;
private void ToolStripButton1_MouseEnter(object sender, EventArgs e) {
if (savedCursor == null) {
savedCursor = this.Cursor;
this.Cursor = Cursors.UpArrow;
}
}
private void ToolStripButton1_MouseLeave(object sender, EventArgs e) {
this.Cursor = savedCursor;
savedCursor = null;
}
1
下拉到Win32并处理WM_SETCURSOR。您可以放入自己的自定义逻辑,根据按钮的命中测试更改光标。 Check this article by Raymond Chen以更好地了解光标如何设置。
相关问题
- 1. 如何更改鼠标光标图标?
- 2. 如何更改按钮上的光标?
- 3. 如何更改VIM中的光标键
- 4. 如何更改光标中的排序
- 5. 如何更改axShockwaveFlash的光标?
- 6. 如何更改NetBeans中的光标(光标)闪烁率?
- 7. 更改光标VB.NET
- 8. Java更改光标
- 9. 如何更改光标类型
- 10. Android如何更改edittext光标样式
- 11. 如何使用jQuery更改光标?
- 12. 如何使用extjs更改光标
- 13. 如何更改光标图像?
- 14. JavaScript更改光标图标
- 15. 更改光标的外观
- 16. 更改按钮的光标
- 17. 如何获取ToolStripButton的坐标?
- 18. 如何更改派生ToolStripButton的默认图像?
- 19. 如何更改tornado中的鼠标光标图标Fx
- 20. JavaScript光标更改(并再次更改)
- 21. 如何更改光标颜色而不更改文字颜色?
- 22. 如何更改日食的鼠标光标的亮度
- 23. 更改光标线程
- 24. js/css更改光标
- 25. 在asp.net中更改光标
- 26. 永久更改光标
- 27. Python xlib更改光标
- 28. 拖动时更改光标
- 29. 更改光标按住?
- 30. TSQL更改光标定义
问题是关于C#。为什么这是在VB中? – 2016-05-10 12:44:35