Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB7
Expertise: Intermediate
Jun 1, 2002



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Setting the font family of the selected text of a RichTextBox

' Set the specified font to the selection of a RichTextBox
' Note: require GetSafeStyleForFontFamily
' Example: SetFontFamily(richTextBox1, "Times New Roman")

Public Sub SetFontFamily(ByVal rtb As RichTextBox, ByVal fontName As String)
    Dim fontFam As New System.Drawing.FontFamily(fontName)
    Dim style As System.Drawing.FontStyle

    ' if the selection length is > 0, work char by char
    If rtb.SelectionLength > 0 Then
        Dim selStart As Integer = rtb.SelectionStart
        Dim selLength As Integer = rtb.SelectionLength

        Dim i As Integer
        For i = 0 To selLength - 1
            ' select 1 char
            rtb.Select(selStart + i, 1)
            ' get the font style of the selected char
            style = GetSafeStyleForFontFamily(fontFam, rtb.SelectionFont.Style)
            ' create and assign to the char a new font with the new style
            rtb.SelectionFont = New Font(fontFam, rtb.SelectionFont.Size, style)
        ' reselect the original selection
        rtb.Select(selStart, selLength)
        ' get a safe style of the selection
        style = GetSafeStyleForFontFamily(fontFam, rtb.SelectionFont.Style)
        ' assign the new font
        rtb.SelectionFont = New Font(fontFam, rtb.SelectionFont.Size, style)
    End If
End Sub
Marco Bellinaso
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date