当鼠标指针在RichTextBox中的粗体字上时,如何更改光标?

当鼠标指针位于RichTextBox中的粗体字上时,我想将光标更改为HAND。 这该怎么做?

将此函数添加到richtextbox.OnMouseMove事件。

private void richTextBox2_MouseMove(object sender, MouseEventArgs e) { int c = richTextBox2.GetCharIndexFromPosition(new Point(eX, eY)); richTextBox2.Select(c, 1); if (richTextBox2.SelectionFont.Bold) { richTextBox2.Cursor = Cursors.Hand; } else { richTextBox2.Cursor = Cursors.Default; } } 

你需要1个字符才能知道它是否是粗体。

  • 注册OnMouseMove处理程序
  • 调用GetCharIndexFormPosition
  • 确定该索引是否超过粗体字符
  • 根据需要设置Cursor属性。