我StatusStrip
的表单底部有一个对象,其中ToolStripStatusLabel
添加了一个对象。我想更改鼠标悬停在鼠标光标上时显示的类型。
我怎样才能做到这一点?
我StatusStrip
的表单底部有一个对象,其中ToolStripStatusLabel
添加了一个对象。我想更改鼠标悬停在鼠标光标上时显示的类型。
我怎样才能做到这一点?
该ToolStripStatusLabel
对象没有Cursor
属性。为了更改显示的光标,您必须StatusStrip.Cursor
在运行时设置该属性。
使用标签的 MouseEnter 和 MouseLeave 事件来更改 StatusStrip.Cursor 属性。
作为替代方案,您可以托管一个Label
inToolStripControlHost
并将其添加到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;
}