嘗試使用GetFirstCharIndexFromLine函數來獲取每一行的起點:
For i As Integer = 0 To RichTextBox2.Lines.Count - 1
RichTextBox2.Select(RichTextBox2.GetFirstCharIndexFromLine(i),
RichTextBox2.Lines(i).Length)
MessageBox.Show(RichTextBox2.SelectionFont.Name)
Next
這是我設置使用RichTextBox控件:
RichTextBox2.Clear()
RichTextBox2.SelectionFont = New Font("Segoe UI", 16)
RichTextBox2.AppendText("This is the First Line" & Environment.NewLine)
RichTextBox2.SelectionFont = New Font("Calibri", 12)
RichTextBox2.AppendText("This is the Second Line" & Environment.NewLine)
RichTextBox2.SelectionFont = New Font("Arial", 16)
RichTextBox2.AppendText("This is the Third Line" & Environment.NewLine)
仍然得到第一線的字體名稱。使用RichTextbox2.SelectedText來驗證它是否選擇了正確的文本並且它是,但字體顯示不正確。 謝謝 – Charan
@Charan我在RichTextBox中測試了這段代碼,我在三條不同的線上有三種不同的字體,並且它正確地報告了一切。 – LarsTech
@Charan我發佈了我的設置代碼。 – LarsTech