【问题标题】:User Change Font of Selected Text in RichTextBox用户更改 RichTextBox 中选定文本的字体
【发布时间】:2016-10-24 23:35:16
【问题描述】:

这应该很容易,但它让我望而却步。我在 VB.NET 中有一个 RichTextBox,用户可以在其中输入文本。我希望他们能够选择一些文本,然后更改所选内容的字体属性。

【问题讨论】:

标签: vb.net fonts richtextbox


【解决方案1】:

这是我为您快速编写的内容。

它将获取系统上所有已安装的字体并将它们添加到组合框中,因此您不必手动添加它们。

我也这样做了,所以每当您更改我添加的组合框的字体类型时,它都会更新 RichTextBox 的字体。

Imports System.Drawing.Text
Public Class Form1
''CREATE ANOTHER COMBOBOX TO CHANGE THE SIZE OF THE TEXT USING THE SAME METHOD
''AS THE FONT COMBOBOX.
Dim FONTSIZE = 8
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim InstalledFonts = New InstalledFontCollection
    Dim FontFamilies() As FontFamily = InstalledFonts.Families

    For Each Font As FontFamily In FontFamilies
        ComboBox1.Items.Add(Font.Name)
    Next
    ''THE END USER WONT BE ABOUT TO EDIT THE INSTALLED ITEMS IN THE COMBOBOX
    ''THE STARTING FONT IS CONSOLAS
    ComboBox1.DropDownStyle = ComboBoxStyle.DropDownList
    ComboBox1.Text = "Consolas"
    End Sub

Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    ''THIS WILL CHANGE THE HIGHLIGHTED "SELECTED" TEXT FONT ONLY
    ''AS ASKED FOR IN QUESTION
    RichTextBox1.SelectionFont = New Drawing.Font(ComboBox1.Text, FONTSIZE)
End Sub
End Class

您需要在表单中添加一个组合框和一个富文本框,这样也可以工作。

如果您有任何问题,请告诉我,我会尽力帮助您工作。

【讨论】:

  • FontDialog 会不会更好? :)
  • 哈哈哈那哪里好玩?
  • 呃……呃呃呃……好吧,没什么。 ;)
【解决方案2】:

感谢 Werdna,您的回答给了我一些方向。我确实使用了 FontDialog,因为最后我想允许其他字体更改,例如样式和颜色。

Private Sub rtf_Notes_MouseUp(sender As Object, e As MouseEventArgs) Handles rtf_Notes.MouseUp
    'Test for right-click
    If (e.Button = Windows.Forms.MouseButtons.Right) Then
        With FontDialog1
            .ShowColor = True
            If (.ShowDialog() = Windows.Forms.DialogResult.OK) Then
                rtf_Notes.SelectionFont = New Drawing.Font(.Font.Name, .Font.Size, .Font.Style)
                rtf_Notes.SelectionColor = .Color
            End If
        End With
    End If
End Sub

【讨论】:

  • 好的,所以我睡眠不足。删除了重复的 .ShowDialog ,一切都很好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-28
  • 2012-07-28
  • 1970-01-01
  • 2013-10-25
  • 2013-11-07
  • 2018-02-11
  • 1970-01-01
相关资源
最近更新 更多