Controlo 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 cadeia de caracteres ou propriedade inteira, digite o nome da propriedade na coluna Propriedade da tabela Controle .
Atributos de controle
Você pode usar os seguintes atributos com esse controle. Para alterar o valor de um atributo usando um evento, inscreva o controle em um ControlEvent na tabela EventMapping e liste o identificador do atributo na coluna Atributo. Insira o identificador do ControlEvent na coluna Evento.
Identificador de atributo | Bit hexadecimal | Descrição |
---|---|---|
IndirectPropertyName | Este é o nome de uma propriedade indireta associada ao controle. Se o bit do atributo Indireto estiver definido, o controle exibirá ou alterará o valor da propriedade com esse nome. Se o bit do atributo Indireto estiver definido, esse nome também será o valor da propriedade listada na coluna Propriedade da tabela Controle . | |
Posição | Posição do controle na caixa de diálogo. Insira a largura, altura e coordenadas do canto esquerdo do controle nas colunas Largura, Altura, X e Y da tabela Controle . Use unidades de instalação para comprimento e distância. |
|
PropertyName | Este é o nome da propriedade associada a esse controle. Se o bit do atributo Indireto não estiver definido, o controle exibirá ou alterará o valor da propriedade com esse nome. Este atributo é especificado na coluna Propriedade da tabela Control. | |
PropertyValue | O valor atual da propriedade exibida ou alterada por esse controle. Se o bit do atributo Indirect não estiver definido, esse será o valor de PropertyName. Se o bit do atributo Indirect 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 texto, prefixe a cadeia de caracteres exibidos com {\style} ou {&style}. Onde style é um identificador listado na coluna TextStyle da tabela TextStyle. Se nenhum deles estiver presente, mas a propriedadeDefaultUIFontfor 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, onde n é um inteiro positivo. |
|
visível | 0x00000000 0x00000001 |
Controle oculto. Controlo 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. |
ativado | 0x00000000 0x00000002 |
Controle em um estado desativado. Controle em um estado habilitado. Inclua esse bit na palavra bit na coluna Atributos do Controle de para habilitar o controle na criação. Você também pode habilitar ou desabilitar um controle usando a tabela ControlCondition. |
afundado | 0x00000000 0x00000004 |
Exibe o estilo visual padrão. Exibe o controle com uma aparência 3D afundada. Inclua esses bits na palavra bit na coluna Atributos da tabela Controle de . |
indireta | 0x00000000 0x00000008 |
O controle exibe ou altera o valor da propriedade na coluna Propriedade da tabela Control. O controle exibe ou altera o valor da propriedade que tem o identificador listado na coluna Propriedade da tabela Control. 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 bit da coluna Atributos da tabela Control 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 é 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, RightAlignede LeftScroll. |
Ordenado | 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 Ordenado estiver definido, o ComboBox tem o estilo CBS_SORT e exibe itens conforme especificado por 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 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 da interface do usuário padrão do usuário. |
Comentários
Esse controle pode ser criado a partir da classe COMBOBOX usando a funçãoCreateWindowEx. 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, 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 Control. Por exemplo, se o campo de texto começar com {80}, o comprimento da cadeia de caracteres será limitado a 80 caracteres. Se tal limite não for fornecido na tabela, ou se 0 for especificado, o comprimento é definido para 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 Dialog. Como o texto estático não pode ter foco, quando a caixa de diálogo é criada, o campo de edição terá o foco inicialmente como pretendido. Isso garante que os leitores de tela mostrem as informações corretas.