Compartilhar via


Controle ComboBox

O controle ComboBox exibe uma lista suspensa de valores predefinidos e um campo de edição no qual o usuário pode inserir um valor. Para associar esse controle a uma propriedade de cadeia de caracteres ou inteiro, insira o nome da propriedade na coluna Propriedade da tabela controle .

Atributos de controle

Você pode usar os atributos a seguir com esse controle. Para alterar o valor de um atributo usando um evento, assine o controle em um ControlEvent na tabela EventMapping e liste o identificador do atributo na coluna Attribute. Insira o identificador do ControlEvent na coluna Evento.

Identificador de atributo Bit hexadecimal Descrição
indirectPropertyName Esse é o nome de uma propriedade indireta associada ao controle. Se o bit de atributo indireto for definido, o controle exibirá ou alterará o valor da propriedade que tem esse nome. Se o bit de atributo indireto estiver definido, esse nome também será o valor da propriedade listada na coluna Propriedade da tabela controle .
de Posição Posição do controle na caixa de diálogo. Insira a largura, a altura e as coordenadas do controle do canto esquerdo do controle nas colunas Width, Height, X e Y da tabela controle . Use unidades do instalador para comprimento e distância.
PropertyName Esse é o nome da propriedade associada a esse controle. Se o bit de atributo indireto não estiver definido, o controle exibirá ou alterará o valor da propriedade que tem esse nome. Esse atributo é especificado na coluna Propriedade da tabela controle .
PropertyValue O valor atual da propriedade exibida ou alterada por esse controle. Se o bit de atributo indireto não estiver definido, esse será o valor de PropertyName. Se o bit de atributo indireto estiver definido, esse será o valor de IndirectPropertyName. Se o atributo for alterado, o controle refletirá o novo valor.
de Texto Para definir a fonte e o estilo de fonte de uma cadeia de caracteres de texto, prefixe a cadeia de caracteres exibida com {\style} ou {&style}. Onde o estilo é um identificador listado na coluna TextStyle da tabela TextStyle. Se nenhum deles estiver presente, mas a propriedade DefaultUIFont for definida como um estilo de texto válido, essa fonte será usada. Para especificar o número de caracteres que o usuário pode inserir, acrescente {n} após qualquer especificação de fonte, em que n é um inteiro positivo.
Visíveis 0x00000000 0x00000001
Controle oculto. Controle visível.
Inclua esse bit na palavra bit da coluna Atributos na tabela controle para tornar o controle visível ou oculto após sua criação.
Você também pode ocultar ou mostrar um controle usando a tabela ControlCondition.
habilitado 0x00000000 0x00000002
Controlar em um estado desabilitado. Controlar em um estado habilitado.
Inclua esse bit na palavra bit na coluna Atributos do controle para habilitar o controle na criação.
Você também pode habilitar ou desabilitar um controle usando a tabela ControlCondition.
submersa 0x00000000 0x00000004
Exibe o estilo visual padrão. Exibe o controle com uma aparência submersa, 3D.
Inclua esses bits na palavra bit na coluna Atributos da tabela controle .
Indireto 0x00000000 0x00000008
O controle exibe ou altera o valor da propriedade na coluna Propriedade da tabela controle . O controle exibe ou altera o valor da propriedade que tem o identificador listado na coluna Propriedade da tabela Controle.
Determina se a propriedade associada a esse controle é referenciada indiretamente.
inteiro 0x00000000 0x00000010
A propriedade associada ao controle é um valor de cadeia de caracteres. A propriedade associada ao controle é um valor inteiro.
Inclua esse bit na palavra de bit da coluna Atributos da tabela controle para definir esse atributo na criação do controle.
RTLRO 0x00000000 0x00000020
O texto no controle é exibido na ordem de leitura da esquerda para a direita. O texto no controle é exibido na ordem de leitura da direita para a esquerda.
RightAligned 0x00000000 0x00000040
O texto no controle é alinhado à esquerda. O texto no controle está alinhado à direita.
LeftScroll 0x00000000 0x00000080
A barra de rolagem está localizada no lado direito do controle. A barra de rolagem está localizada no lado esquerdo do controle.
bidi 0x000000E0 Defina esse valor para uma combinação dos atributos RTLRO, RightAligned e LeftScroll.
classificação não definido 0x00010000
Itens exibidos em ordem alfabética. Itens exibidos na ordem especificada na tabela ListView.
O controle consulta a tabela ComboBoxe, se o bit de estilo Classificado estiver definido, o comboBox terá o estilo CBS_SORT e exibirá itens conforme especificado pela Ordenação. Se esse bit de estilo não estiver definido, os itens serão exibidos em ordem alfabética.
comboList não definido 0x00020000
Caixa de combinação com o campo de edição. A caixa de combinação com o campo de edição é substituída por um campo de texto estático.
UsersLanguage 0x00000000 0x00100000
Fontes criadas na página de código do banco de dados. Fontes criadas na página de código de interface do usuário padrão do usuário.

Observações

Esse controle pode ser criado a partir da classe COMBOBOX usando a função CreateWindowEx. Ele tem os estilos CBS_AUTOHSCROLL, WS_TABSTOP, WS_GROUPe WS_CHILD. Se o bit ComboList estiver ativado, ele também terá o estilo CBS_DROPDOWNLIST, caso contrário, ele terá o estilo CBS_DROPDOWN.

O comprimento do texto que pode ser inserido pode ser limitado colocando um número de 0 a 2147483646 em chaves no início do campo Texto na tabela controle . Por exemplo, se o campo de texto começar com {80}, o comprimento da cadeia de caracteres será limitado a 80 caracteres. Se nenhum limite desse tipo for fornecido na tabela ou se 0 for especificado, o comprimento será definido como o máximo possível (2147483646 caracteres). Um valor negativo ou não numérico gerará um erro.

Para compatibilidade com leitores de tela, ao criar uma caixa de diálogo com um controle ComboBox como o primeiro controle ativo, você deve tornar o campo de texto pertencente ao campo de edição o primeiro controle ativo na tabela de diálogo . Como o texto estático não pode se concentrar, quando a caixa de diálogo é criada, o campo de edição terá o foco inicialmente conforme o esperado. Isso garante que os leitores de tela mostrem as informações corretas.