Элемент управления CommandButton для пользователей Visual Basic 6.0
Обновлен: Ноябрь 2007
Элемент управления CommandButton в Visual Basic 6.0 заменяется элементом управления Button Windows Forms в Visual Basic 2008. Имена некоторых свойств, методов, событий и констант различаются, а в некоторых случаях имеется различие в их поведении.
Концептуальные различия
Свойства Default и Cancel
В Visual Basic 6.0 логические свойства Default и Cancel элемента управления CommandButton определяют, будет ли элемент управления отвечать на нажатие клавиш ВВОД или ESC, соответственно.
В Visual Basic 2008 элемент управления Button больше не имеет свойств Default или Cancel. Объект Form имеет свойства AcceptButton и CancelButton, которые предоставляют те же функциональные возможности; в качестве аргумента эти свойства получают имя элемента управления Button.
Свойство Value
В Visual Basic 6.0 логическое свойство Value элемента управления CommandButton указывает, был ли выбран элемент управления; установка для этого свойства значения True создает событие Click кнопки.
В Visual Basic 2008 элемент управления Button больше не имеет свойства Value. Можно использовать событие GotFocus, чтобы определить, выбран ли элемент управления; для создания события Click можно использовать метод PerformClick.
Свойства Style, Picture, DownPicture и DisabledPicture
В Visual Basic 6.0 установка для свойства Style элемента управления CommandButton значения 1 – Graphical изменяет внешний вид отображения элемента управления. Свойства Picture, DownPicture и DisabledPicture используются для назначения изображений, которые должны отображаться при изменении состояния элемента управления. Например, при нажатии элемента управления CommandButton отображается изображение DownPicture, если элемент управления отключен, отображается изображение DisabledPicture.
В Visual Basic 2008 больше не поддерживаются свойства Style, Picture, DownPicture или DisabledPicture. Свойство Style больше не требуется; назначение рисунка свойству Image имеет тот же эффект, что и установка для свойства Style значения Graphical. Свойство Picture заменено свойством Image. Функциональные возможности свойств DownPicture и DisabledPicture могут быть эмулированы с помощью элемента управления ImageList, который содержит несколько изображений.
Свойство MaskColor
В Visual Basic 6.0 свойство MaskColor элемента управления CommandButton используется для определения цвета, который становится прозрачным, позволяя отображаться сквозь него фоновому изображению. Чтобы использовать это свойство, необходимо установить для свойства Style значение Graphical, для свойства UseMaskColor значение True и свойству Picture должно быть назначено растровое изображение.
В Visual Basic 2008 нет прямого эквивалента для свойства MaskColor. Однако можно установить прозрачность для элемента управления с помощью метода MakeTransparent объекта Bitmap.
Другие различия
Дополнительно имеется большое число концептуальных различий, которые применяются ко всем элементам управления, включая различия в привязке данных, обработке шрифтов, функции перетаскивания, поддержке справки и т. д. Дополнительные сведения см. в разделе Элементы управления Windows Forms (для пользователей Visual Basic 6.0).
Изменения кода для элемента управления CommandButton
Следующие примеры кода иллюстрируют различия в методах кодирования между Visual Basic 6.0 и Visual Basic 2008.
Изменения кода для кнопок Setting Default и Cancel
В следующем примере показана установка двух кнопок по умолчанию и кнопок отмены для формы.
' Visual Basic 6.0
' Set the first button to respond to the Enter key.
Command1.Default = True
' Set the second button to respond to the Esc key.
Command2.Cancel = True
' Visual Basic
' Set the first button to respond to the Enter key.
Me.AcceptButton = Button1
' Set the second button to respond to the Esc key.
Me.CancelButton = Button2
Изменение кода для добавления прозрачности кнопке
В следующем примере показаны методы определения области прозрачности кнопки, которая содержит изображение; любая часть изображения белого цвета становится прозрачной.
' Visual Basic 6.0
' Assumes a picture has been assigned to the Picture property
' and that the Style property has been set to Graphical.
Command1.UseMaskColor = True
Command1.MaskColor = vbWhite
' Visual Basic
' Assumes a picture has been assigned to the BackgroundImage property.
Dim ButtonBitmap As New System.Drawing.Bitmap(Button1.BackgroundImage)
ButtonBitmap.MakeTransparent(System.Drawing.Color.White)
Button1.BackgroundImage = ButtonBitmap
Эквиваленты свойств, методов и событий элемента управления CommandButton
В следующей таблице приведен список свойств, методов и событий 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). |
BackColor |
Примечание.
Обработка цветов отличается в Visual Basic 2008. Дополнительные сведения см. в разделе Обработка цветов для пользователей Visual Basic 6.0.
|
Cancel |
CancelButton (объект Form) |
Caption |
|
Container |
|
Default |
AcceptButton (объект Form) |
DisabledPicture DownPicture |
Новая реализация. Дополнительные сведения см. в разделе Свойство Style для пользователей Visual Basic 6.0. |
DragIcon DragMode |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
Примечание.
Обработка шрифтов отличается в Visual Basic 2008. Дополнительные сведения см. в разделе Объект Font (для пользователей 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).
|
MaskColor |
Новая реализация. Дополнительные сведения см. в разделе Свойство MaskColor (для пользователей Visual Basic 6.0). |
MouseIcon |
Новая реализация. Дополнительные сведения см. в разделе Невозможно задать настраиваемый указатель мыши MousePointer. |
MousePointer |
Список констант см. в разделе Свойство MousePointer (для пользователей Visual Basic 6.0). |
OLEDropMode |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
Parent |
Метод FindForm |
Picture |
|
RightToLeft |
|
Style |
Новая реализация. Дополнительные сведения см. в разделе Свойство Style для пользователей Visual Basic 6.0. |
ToolTipText |
Компонент ToolTip Дополнительные сведения см. в разделе Поддержка подсказок (для пользователей Visual Basic 6.0). |
Top |
Примечание.
Обработка координат отличается в Visual Basic 2008. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
UseMaskColor |
Новая реализация. Дополнительные сведения см. в разделе Свойство MaskColor (для пользователей Visual Basic 6.0). |
Value |
Новая реализация. Метод PerformClick соответствует установке для Value значения True; для любого другого использования свойства Value эквивалента не существует. |
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. |
Move |
Примечание.
Обработка координат отличается в Visual Basic 2008. Дополнительные сведения см. в разделе Система координат (для пользователей Visual Basic 6.0).
|
OLEDrag |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
SetFocus |
|
ShowWhatsThis |
Новая реализация. Дополнительные сведения см. в разделе Поддержка справки (для пользователей Visual Basic 6.0). |
ZOrder |
Функция BringToFront или SendToBack |
События
Visual Basic 6.0 |
Эквивалент Visual Basic 2008 |
---|---|
DragDrop DragOver |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
GotFocus |
|
LostFocus |
|
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Новая реализация. Дополнительные сведения см. в разделе Действие перетаскивания для пользователей Visual Basic 6.0. |
Замечания по обновлению
При обновлении приложения Visual Basic 6.0 с помощью мастера обновления все элементы управления CommandButton обновляются до элементов управления Button Windows Forms, а код обновляется для использования эквивалентных свойств, методов и событий. Там, где нет эквивалентов или имеются возможные различия в поведении, в код вставлены комментарии со ссылками на разделы справки.
При обновлении приложения до Visual Basic 2008, если для свойства Style установлено значение 1 – Graphical, для свойства FlatStyle обновленного элемента управления устанавливается значение Standard, и любое изображение, назначенное свойству Picture во время разработки, назначается свойству Image обновленного элемента управления.
Если свойства DownPicture или DisabledPicture были заданы во время разработки или во время выполнения, необходимо изменить обновленное приложение, чтобы использовать элемент управления ImageList. Дополнительные сведения см. в разделе Практическое руководство. Эмуляция элемента управления Visual Basic 6.0 с тремя состояниями в обновляемом приложении.
Мастер обновления не обновляет код, использующий свойство MaskColor. В код будет вставлено предупреждение об обновлении. Необходимо изменить код перед запуском приложения.