在ToolStripStatusLabel对象上设置光标类型

时间:2016-07-13 14:38:49

标签: c# winforms toolstripstatuslabel

我的表单底部有一个StatusStrip对象,并添加了一个ToolStripStatusLabel对象。我想改变鼠标悬停在它上面时显示的鼠标光标类型。

我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:2)

ToolStripStatusLabel对象没有Cursor属性。要更改显示的光标,必须在运行时设置StatusStrip.Cursor属性。

使用标签的MouseEnter和MouseLeave事件来更改StatusStrip.Cursor属性。

答案 1 :(得分:1)

作为替代方案,您可以在ToolStripControlHost中托管Label并将其添加到StatusStrip。这样您就可以设置所有Label属性,包括Cursor。它会像其他标准项目一样。

var item = new ToolStripControlHost(new Label {Text= "Some Text", Cursor= Cursors.Hand});
this.statusStrip1.Items.Add(item);

答案 2 :(得分:-1)

将以下代码添加到表单中。然后在设计器中,将MouseEnter的事件处理程序设置为SetHandCursor,将MouseLeave设置为SetDefaultCursor。

private void SetHandCursor(object sender, EventArgs e)
{
    Cursor = Cursors.Hand;
}

private void SetDefaultCursor(object sender, EventArgs e)
{
    Cursor = Cursors.Default;
}