Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы определить тип элемента управления в форме или отчете, используйте свойство ControlType в Visual Basic. Чтение/запись байта.
Синтаксис
выражение. ControlType (Тип управления)
выражение Переменная, представляющая объект WebBrowserControl .
Примечания
Параметр свойства ControlType является встроенной константой, которая определяет тип элемента управления. Полный список элементов управления, созданных методами CreateControl и CreateReportControl, см. в перечислении AcControlType .
Свойство ControlType можно задать только с помощью Visual Basic в конструкторе форм или отчетов, но его можно прочитать во всех представлениях.
Свойство ControlType полезно не только для проверки определенного типа элемента управления в коде, но и для изменения типа элемента управления на другой. Например, можно изменить текстовое поле на поле со списком, задав свойству ControlType этого поля значение acComboBox в режиме конструктора форм.
Свойство ControlType используется для изменения характеристик аналогичных элементов управления в форме при определенных условиях. Например, если вы не хотите, чтобы пользователи изменяли существующие данные в текстовых полях, можно присвоить свойству SpecialEffect для всех текстовых полей значение Flat и задать свойству формы AllowEdits значение No. (Свойство SpecialEffect не влияет на возможность редактирования данных; оно используется здесь для предоставления визуального указания на то, что поведение элемента управления изменилось.)
Свойство ControlType также используется для указания типа создаваемого элемента управления при использовании метода CreateControl .
Пример
В следующем примере проверяется свойство ControlType для всех элементов управления формы. Для каждого элемента управления "Метка" и "Текстовое поле" процедура переключает свойство SpecialEffect для этих элементов управления.
Если свойство SpecialEffect элемента управления label задано в значение Shadowed, а свойство SpecialEffect элемента управления надписем — в Normal, а свойствам AllowAdditions, AllowDeletions и AllowEdits задано значение True, переменная intCanEdit переключается, чтобы разрешить редактирование базовых данных.
Sub ToggleControl(frm As Form)
Dim ctl As Control
Dim intI As Integer, intCanEdit As Integer
Const conTransparent = 0
Const conWhite = 16777215
For Each ctl in frm.Controls
With ctl
Select Case .ControlType
Case acLabel
If .SpecialEffect = acEffectShadow Then
.SpecialEffect = acEffectNormal
.BorderStyle = conTransparent
intCanEdit = True
Else
.SpecialEffect = acEffectShadow
intCanEdit = False
End If
Case acTextBox
If .SpecialEffect = acEffectNormal Then
.SpecialEffect = acEffectSunken
.BackColor = conWhite
Else
.SpecialEffect = acEffectNormal
.BackColor = frm.Detail.BackColor
End If
End Select
End With
Next ctl
If intCanEdit = IFalse Then
With frm
.AllowAdditions = False
.AllowDeletions = False
.AllowEdits = False
End With
Else
With frm
.AllowAdditions = True
.AllowDeletions = True
.AllowEdits = True
End With
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.