Установка типа курсора для объекта ToolStripStatusLabel

У меня есть StatusStrip объект в нижней части моей формы с ToolStripStatusLabel объект добавлен к нему. Я хочу изменить тип курсора мыши, который отображается при наведении на него курсора.

Как мне этого добиться?

3 ответа

Решение

ToolStripStatusLabel объект не имеет Cursor имущество. Чтобы изменить отображаемый курсор, вы должны установить StatusStrip.Cursor собственность во время выполнения.

Используйте метки MouseEnter и MouseLeave, чтобы изменить свойство StatusStrip.Cursor.

В качестве альтернативы, вы можете разместить Label в ToolStripControlHost и добавить его в 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;
}
Другие вопросы по тегам