ПОНЯТНО О Visual Basic NET (том 3)

Автоматическое заполнение поля текстом


Пока мы вводили текст в поле RichTextBox вручную. Посмотрим, как можно заставить VB автоматически заполнять поле текстом и попутно форматировать его. Вот процедура обработки нажатия на кнопку Кнопка. Именно эта процедура заполняет нижнюю часть поля RichTextBox на Рис. 20.6.

Private Sub Кнопка_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Кнопка.Click

        RTB.SelectedText = "А этот текст вводится автоматически. Сейчас я включу маркеры." + vbNewLine

        RTB.SelectionBullet

= True

        RTB.SelectedText = "Вот так." + vbNewLine

        RTB.SelectedText = "А теперь выключу маркеры, но изменю шрифт и его цвет:" + vbNewLine

        RTB.SelectionBullet

= False

        RTB.SelectionFont

= New Font("Arial", 16)

        RTB.SelectionColor

= Color.Green

        RTB.SelectedText

= "Вот так теперь стало."

End Sub

Пояснения: Свойство SelectedText имеет значение выделенного фрагмента текста. Поэтому мы всегда можем написать

        Debug.WriteLine(RTB.SelectedText)

и тем самым распечатать выделенный предварительно вручную фрагмент текста.

С другой стороны мы можем присваивать этому свойству значение произвольной строки. Тем самым строка будет введена в поле RichTextBox и примет на себя форматирование, предварительно установленное нами обычным образом.

Если вводимая в поле строка «упирается» в правую границу поля, то она автоматически продолжается со следующей строки. Чтобы принудительно продолжить ввод с новой строки (то есть сделать «абзац»), мы при ручном вводе нажимаем на клавишу Enter, а при автоматическом заполнении поля вставляем символ vbNewLine.



Содержание раздела