C# 在ToolStripStatusLabel对象上设置光标类型
我在表单底部有一个C# 在ToolStripStatusLabel对象上设置光标类型,c#,winforms,toolstripstatuslabel,C#,Winforms,Toolstripstatuslabel,我在表单底部有一个StatusStrip对象,其中添加了一个ToolStripStatusLabel对象。我想更改鼠标悬停在其上时显示的鼠标光标的类型 如何实现这一点?在表单中添加以下代码。然后在设计器中,将MouseEnter的事件处理程序设置为SetHandCursor,将MouseLeave设置为SetDefaultCursor private void SetHandCursor(object sender, EventArgs e) { Cursor = Cursors.Han
StatusStrip
对象,其中添加了一个ToolStripStatusLabel
对象。我想更改鼠标悬停在其上时显示的鼠标光标的类型
如何实现这一点?在表单中添加以下代码。然后在设计器中,将MouseEnter的事件处理程序设置为SetHandCursor,将MouseLeave设置为SetDefaultCursor
private void SetHandCursor(object sender, EventArgs e)
{
Cursor = Cursors.Hand;
}
private void SetDefaultCursor(object sender, EventArgs e)
{
Cursor = Cursors.Default;
}
ToolStripStatusLabel
对象没有Cursor
属性。要更改显示的光标,必须在运行时设置StatusStrip.cursor
属性
使用标签的MouseEnter和MouseLeave事件更改StatusStrip.Cursor属性。作为替代方法,您可以在中托管
标签,并将其添加到StatusStrip
。这样,您可以设置所有标签
属性,包括光标
。它将像其他标准项一样工作
var item = new ToolStripControlHost(new Label {Text= "Some Text", Cursor= Cursors.Hand});
this.statusStrip1.Items.Add(item);
使用其MouseEnter和MouseLeave事件。在事件处理程序中更改StatusStrip的游标属性。仅此而已。当我点击StatusStrip
并查看属性时,我没有看到任何属性,例如StatusStrip的光标,而不是标签。它需要代码。啊,好的,明白了!我不知道它只是在设计期间没有暴露在StatusStrip
属性中。谢谢你,汉斯。另外,你能补充一下吗?你因在评论中回答而不是实际回答而臭名昭著P-您这样做可能是为了不会收到一百万条通知。:)你有你自己回答问题所需要知道的一切。