Элемент управления RichTextBox (для пользователей Visual Basic 6.0)
Обновлен: Ноябрь 2007
Элемент управления RichTextBox версии Visual Basic 6.0 заменяется в версии Visual Basic 2008 элементом управления RichTextBox форм Windows Forms. Имена некоторых свойств, методов, событий и констант различаются, а в некоторых случаях имеются различия и в их поведении.
Концептуальные различия
Свойство AutoVerbMenu
В версии Visual Basic 6.0 свойство AutoVerbMenu элемента управления RichTextBox используется для отображения контекстного меню с набором стандартных команд.
В Visual Basic 2008 свойство AutoVerbMenu более не существует. Для предоставления элементу управления RichTextBox контекстного меню нужно использовать компонент ContextMenuStrip. Дополнительные сведения см. в разделе Свойство AutoVerbMenu не было обновлено.
Свойство DisableNoScroll
В Visual Basic 6.0 свойство DisableNoScroll определяет, будут ли в элементе управления RichTextBox полосы прокрутки отображаться недействующими при недостаточном количестве строк текста для прокрутки в вертикальном направлении или недостаточном количестве символов для прокрутки в горизонтальном направлении.
В версии Visual Basic 2008 свойства DisableNoScroll более не существует. Свойством ScrollBars можно воспользоваться для принудительного отображения полос прокрутки, но сделать так, чтобы они выглядели недействующими, невозможно.
Свойство FileName и метод LoadFile
В версии Visual Basic 6.0 с помощью свойства FileName или метода LoadFile можно загрузить RTF-файл или текстовый файл в элемент управления RichTextBox.
В версии Visual Basic 2008 доступен только метод LoadFile; присвоить файл во время разработки невозможно.
Метод SelPrint
В версии Visual Basic 6.0 метод SelPrint элемента управления RichTextBox можно использовать для печати содержимого данного элемента управления. Он принимает один аргумент hDC, указывающий контекст устройства.
В Visual Basic 2008 метода SelPrint больше не существует, и контексты устройств для печати не используются. Элемент управления RichTextBox не предоставляет метода для печати содержимого. Однако можно создать расширение класса RichTextBox для использования сообщения EM_FORMATRANGE. После этого содержимое RichTextBox можно передать устройству вывода, например принтеру. Дополнительные сведения см. в разделе Свойство SelPrint не было обновлено.
Свойство SelTabCount
В Visual Basic 6.0 свойство SelTabCount определяет количество положений табуляции в выбранных абзацах или в следующих после точки вставки абзацах.
В версии Visual Basic 2008 свойства SelTabCount не существует; оно заменено параметром Length свойства SelectionTabs (SelectionTabs.Length).
Метод Span
В версии Visual Basic 6.0 метод Span элемента управления RichTextBox можно было использовать для выбора диапазона текста на основе набора указанных символов.
В Visual Basic 2008 метод Span более не существует. Для поиска указанного символа можно использовать метод Find с аргументом characterSet(), после чего воспользоваться свойством SelectedText для выбора диапазона.
Метод Upto
В версии Visual Basic 6.0 метод Upto элемента управления RichTextBox можно использовать для перемещения точки вставки до (но не включая) первого символа, входящего в набор указанных символов.
В Visual Basic 2008 метода Upto более не существует. Для поиска указанного символа можно воспользоваться методом Find с аргументом characterSet(), после чего можно воспользоваться свойством SelectionStart для перемещения точки вставки.
Дополнительные различия
Кроме того, существует множество концептуальных различий, которые касаются всех элементов управления, включая различия в привязке данных, обработке шрифтов, функциях перетаскивания, поддержке справки и т. д. Дополнительные сведения см. в разделе Концепции форм Windows Forms (для пользователей Visual Basic 6.0).
Изменения кода для элемента управления RichTextBox
Следующие примеры иллюстрируют различия в методах кодирования между Visual Basic 6.0 и Visual Basic 2008.
Изменения кода для выполнения поиска в элементе управления RichTextBox
На примере следующего кода показано, как в элементе управления RichTextBox выполнить поиск от точки вставки до конца предложения и выделить этот текст. Для данного примера требуется элемент управления RichTextBox с одним или несколькими предложениями, введенными в свойство Text, а также элемент управления Button. Так как данный код будет вызываться по событию Click кнопки, то свойство HideSelection элемента управления RichTextBox должно иметь значение False; иначе выделение текста будет невидимым.
' Visual Basic 6.0
' Make sure that HideSelection is set to False.
Private Sub Command1_Click()
RichTextBox1.Span ".?!", True, True
End Sub
' Visual Basic
' Make sure that HideSelection is set to False.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button1.Click
Dim endChars() As Char = New Char() {".", "!", "?"}
Dim intEnd As Integer
intEnd = RichTextBox1.Find(endChars, RichTextBox1.SelectionStart)
RichTextBox1.SelectionLength = intEnd - RichTextBox1.SelectionStart
End Sub
Соответствие свойств, методов и событий элемента управления RichTextBox
В следующей таблице приведен список свойств, методов и событий версии Visual Basic 6.0 с их эквивалентами версии Visual Basic 2008. Свойства, методы и события, имена и действие которых не изменились, в список не включены. Если не указано иное, все перечисления Visual Basic 2008 сопоставлены пространству имен System.Windows.Forms.
В этой таблице содержатся ссылки на разделы, в которых объясняются различия в поведении. Если нет прямого эквивалента в Visual Basic 2008, приводятся ссылки на разделы, содержащие альтернативные решения.
Свойства
Visual Basic 6.0 |
Эквивалент Visual Basic 2008 |
---|---|
Appearance |
Новая реализация. Дополнительные сведения см. в разделе Свойства Appearance и BorderStyle (для пользователей Visual Basic 6.0). |
AutoVerbMenu |
Новая реализация. Дополнительные сведения см. в разделе Свойство AutoVerbMenu не было обновлено. |
BackColor |
![]()
Обработка цветов в версии Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Обработка цветов для пользователей Visual Basic 6.0.
|
Container |
|
DataBindings DataChanged DataField DataFormat DataMember DataSource |
Новая реализация. Дополнительные сведения см. в разделе Доступ к данным для пользователей Visual Basic 6.0. |
DisableNoScroll |
Новая реализация. |
DragIcon DragMode |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
FileName |
Метод LoadFile |
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
![]()
Обработка шрифтов в версии Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Объект Font (для пользователей Visual Basic 6.0).
|
ForeColor |
![]()
Обработка цветов в Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Обработка цветов для пользователей Visual Basic 6.0.
|
Height |
![]()
Обработка координат в Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
HelpContextID |
Новая реализация. Дополнительные сведения см. в разделе Поддержка справки (для пользователей Visual Basic 6.0). |
HWnd |
|
Index |
Новая реализация. Дополнительные сведения см. в разделе Массивы элементов управления для пользователей Visual Basic 6.0. |
Left |
![]()
Обработка координат в Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
MouseIcon |
Новая реализация. Дополнительные сведения см. в разделе Невозможно задать настраиваемый указатель мыши MousePointer. |
MousePointer |
Список констант см. в разделе Свойство MousePointer (для пользователей Visual Basic 6.0). |
OLEDragMode OLEDropMode |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
Parent |
Метод FindForm |
SelAlignment |
|
SelBold |
|
SelBullet |
|
SelCharOffset |
|
SelColor |
|
SelFontName |
|
SelFontSize |
|
SelHangingIndent |
|
SelIndent |
|
SelItalic |
|
SelLength |
|
SelProtected |
|
SelRightIndent |
|
SelRTF |
|
SelStart |
|
SelStrikethru |
|
SelTabCount |
SelectionTabs.Length |
SelTabs |
|
SelText |
|
SelUnderline |
|
TextRTF |
|
ToolTipText |
Компонент ToolTip Дополнительные сведения см. в разделе Поддержка подсказок (для пользователей Visual Basic 6.0). |
Top |
![]()
Обработка координат в версии Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
WhatsThisHelpID |
Новая реализация. Дополнительные сведения см. в разделе Поддержка справки (для пользователей Visual Basic 6.0). |
Width |
![]()
Обработка координат в версии Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
Методы
Visual Basic 6.0 |
Эквивалент версии Visual Basic 2008 |
---|---|
Drag |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
GetLineFromChar |
|
LinkExecute LinkPoke LinkRequest LinkSend |
Эквивалент отсутствует. Дополнительные сведения см. в разделе Динамический обмен данными для пользователей Visual Basic 6.0. |
Move |
![]()
Обработка координат в версии Visual Basic 2008 выполняется иначе. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
OLEDrag |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
SelPrint |
Новая реализация. Дополнительные сведения см. в разделе Свойство SelPrint не было обновлено. |
SetFocus |
|
ShowWhatsThis |
Новая реализация. Дополнительные сведения см. в разделе Поддержка справки (для пользователей Visual Basic 6.0). |
Span |
Прямого эквивалента нет. Используйте метод Find с аргументом characterSet. |
Upto |
Прямого эквивалента нет. Используйте метод Find с аргументом characterSet. |
ZOrder |
Функция BringToFront или SendToBack |
События
Visual Basic 6.0 |
Эквивалент версии Visual Basic 2008 |
---|---|
Change |
|
DblClick |
|
DragDrop DragOver |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
GotFocus |
|
LostFocus |
|
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
SelChange |
|
Validate |
Замечания по обновлению
При обновлении приложения Visual Basic 6.0 до Visual Basic 2008 все элементы управления RichTextBox обновляются до элементов управления RichTextBox Windows Forms, а свойства, методы и события обновляются до их эквивалентов. Если возможно различие в поведении, в соответствующий код вставляются комментарии об обновлении.
См. также
Ссылки
Общие сведения об элементе управления RichTextBox (Windows Forms)