在我的应用程序中,有两个实例我想使用非默认光标。
一个是在用户可以使用鼠标“绘制”的面板上。我想将光标从默认鼠标更改为钢笔或画笔。我想从网上获取图像,将其转换为适当的文件类型并将其用作面板的光标。
另一个实例是将图像添加到富文本框中。我想添加正确的“调整大小”箭头,以便当用户将鼠标悬停在其中一个小黑框上时,光标会变为双箭头(就像在其他程序中一样)。
这有多容易实现?
在实现调整大小箭头时,我不知道从哪里开始,因为富文本框中并不总是有图像(仅在调试或使用应用程序时)。
在我的应用程序中,有两个实例我想使用非默认光标。
一个是在用户可以使用鼠标“绘制”的面板上。我想将光标从默认鼠标更改为钢笔或画笔。我想从网上获取图像,将其转换为适当的文件类型并将其用作面板的光标。
另一个实例是将图像添加到富文本框中。我想添加正确的“调整大小”箭头,以便当用户将鼠标悬停在其中一个小黑框上时,光标会变为双箭头(就像在其他程序中一样)。
这有多容易实现?
在实现调整大小箭头时,我不知道从哪里开始,因为富文本框中并不总是有图像(仅在调试或使用应用程序时)。
在属性选项卡中实际上有一个用于 winforms 的光标选项,只要Cursor.Position
等于项目的位置,您就可以更改光标。
WinForms 中的所有控件都有一个Cursor
属性,因为它们都继承自System.Windows.Forms.Control
. 当鼠标指针悬停在该控件上时,您分配给此属性的任何光标都将自动显示。
这是一个环境属性,这意味着它会自动从其父窗体继承其值(例如,Button 控件将自动使用与其父窗体相同的光标),除非另有明确设置。
因此,要更改某个控件上显示的光标,您需要做的就是设置该控件对象的Cursor
属性。该框架将负责其余的工作。
更好的是,使用MouseHover
事件并添加一个新的处理程序来在调用时更改光标。