Propriedade ObjectFrame. ControlType (Access)ObjectFrame.ControlType property (Access)

Você pode usar a propriedade ControlType no Visual Basic para determinar o tipo de controle em um formulário ou relatório.You can use the ControlType property in Visual Basic to determine the type of control on a form or report. Byte de leitura/gravação.Read/write Byte.

SintaxeSyntax

expressão. ControlTypeexpression.ControlType

expressão Uma variável que representa um objeto ObjectFrame.expression A variable that represents an ObjectFrame object.

ComentáriosRemarks

A configuração da propriedade ControlType é uma constante intrínseca que especifica o tipo de controle.The ControlType property setting is an intrinsic constant that specifies the control type. Para obter uma lista completa dos controles criados pelos métodos CreateControl e CreateReportControl , consulte a enumeração accontroltype. For a complete list of controls created by the CreateControl and CreateReportControl methods, see the AcControlType enumeration.

[!OBSERVAçãO] A propriedade ControlType só pode ser definida usando o Visual Basic no modo de Design do formulário ou no modo Design do relatório, mas ela pode ser lida em todos os modos.The ControlType property can only be set by using Visual Basic in form Design view or report Design view, but it can be read in all views.

A propriedade ControlType é útil não somente para verificação para um tipo de controle específico no código, mas também para alterar o tipo de controle para outro tipo.The ControlType property is useful not only for checking for a specific control type in code, but also for changing the type of control to another type. Por exemplo, você pode alterar uma caixa de texto para uma caixa de combinação, definindo a propriedade ControlType da caixa de texto como acComboBox enquanto estiver no modo Design do formulário.For example, you can change a text box to a combo box by setting the ControlType property for the text box to acComboBox while in form Design view.

Você pode usar a propriedade ControlType para alterar as características de controles similares em um formulário de acordo com certas condições.You can use the ControlType property to change characteristics of similar controls on a form according to certain conditions. Por exemplo, se você não desejar que os usuários editem dados existentes em caixas de texto, você pode definir a propriedade SpecialEffect para todas as caixas de texto como plano e propriedade do formulário PermitirEdições como não.For example, if you don't want users to edit existing data in text boxes, you can set the SpecialEffect property for all text boxes to Flat and set the form's AllowEdits property to No. (a propriedade SpecialEffect não afeta se os dados podem ser editados; ela é usada aqui para fornecer uma indicação visual que mudou o comportamento do controle).(The SpecialEffect property doesn't affect whether data can be edited; it's used here to provide a visual cue that the control behavior has changed.)

A propriedade ControlType também é usada para especificar o tipo de controle a ser criado quando você estiver usando o método CreateControl.The ControlType property is also used to specify the type of control to create when you are using the CreateControl method.

ExemploExample

O exemplo a seguir examina a propriedade ControlType para todos os controles em um formulário.The following example examines the ControlType property for all controls on a form. Para cada controle de caixa de texto do rótulo e do, o procedimento alterna a propriedade SpecialEffect para esses controles.For each label and text box control, the procedure toggles the SpecialEffect property for those controls.

Quando a propriedade SpecialEffect do controle Label é definida como sombreado, e a propriedade SpecialEffect do controle caixa de texto é definida como normal e as propriedades PermitirAdições, PermitirExclusõese PermitirEdições todos estão definidos como true, a intCanEdit variável é alternada para permitir a edição dos dados subjacentes.When the SpecialEffect property of the label control is set to Shadowed, and the SpecialEffect property of the text box control is set to Normal, and the AllowAdditions, AllowDeletions, and AllowEdits properties are all set to True, the intCanEdit variable is toggled to allow editing of the underlying data.

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

Suporte e comentáriosSupport and feedback

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação?Have questions or feedback about Office VBA or this documentation? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.