我的表单上有一个 RichTextBox 控件。我也有这个标签为 Bold 的按钮,如果有人在 RichTextBox 中选择文字,然后按下按钮,所选文字变为粗体。有什么办法吗?最终用户的简单日常任务。感谢。

有帮助吗?

解决方案

上述内容的变体考虑了根据当前所选文本的字体信息切换粗体开/关:

    With Me.rtbDoc
        If .SelectionFont IsNot Nothing Then
            Dim currentFont As System.Drawing.Font = .SelectionFont
            Dim newFontStyle As System.Drawing.FontStyle

            If .SelectionFont.Bold = True Then
                newFontStyle = currentFont.Style - Drawing.FontStyle.Bold
            Else
                newFontStyle = currentFont.Style + Drawing.FontStyle.Bold
            End If

            .SelectionFont = New Drawing.Font(currentFont.FontFamily, currentFont.Size, newFontStyle)
        End If
    End With

可能需要清理一下,我从一个较旧的项目中删除了它。

其他提示

您需要使用RichTextBox的.SelectionFont属性,并为其指定一个具有所需样式的Font对象。

示例 - 此代码将位于按钮的事件处理程序中:

Dim bfont As New Font(RichTextBoxFoo.Font, FontStyle.Bold)
RichTextBoxFoo.SelectionFont = bfont
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top