在 ToolStripStatusLabel 对象上设置光标的类型
本文关键字:置光标 类型 ToolStripStatusLabel 对象 | 更新日期: 2023-09-27 17:56:42
我在表单底部有一个StatusStrip
对象,其中添加了ToolStripStatusLabel
对象。 我想更改将鼠标悬停在鼠标光标上时显示的鼠标光标类型。
我怎样才能做到这一点?
ToolStripStatusLabel
对象没有 Cursor
属性。 为了更改显示的光标,必须在运行时设置 StatusStrip.Cursor
属性。
使用标签的 MouseEnter 和 MouseLeave 事件来更改 StatusStrip.Cursor 属性。
作为替代方案,您可以在ToolStripControlHost
中托管Label
并将其添加到StatusStrip
。这样,您可以设置所有Label
属性,包括Cursor
。它将像其他标准项目一样工作。
var item = new ToolStripControlHost(new Label {Text= "Some Text", Cursor= Cursors.Hand});
this.statusStrip1.Items.Add(item);
将以下代码添加到窗体中。然后在设计器中,将 MouseEnter 的事件处理程序设置为 SetHandCursor,将 MouseLeave 设置为 SetDefaultCursor。
private void SetHandCursor(object sender, EventArgs e)
{
Cursor = Cursors.Hand;
}
private void SetDefaultCursor(object sender, EventArgs e)
{
Cursor = Cursors.Default;
}