Partilhar via


Controle MaskedEdit

O controle MaskedEdit é um controle de campo de edição que contém uma máscara no campo de texto do controle. Você pode associar o controle a uma propriedade de valor de cadeia de caracteres inserindo o nome da propriedade na coluna Propriedade do Tabela de Controle.

Você pode usar o controle MaskedEdit para criar um modelo para a entrada do usuário de informações, como um número de telefone ou código de identificação do produto. Por exemplo, o PIDKEY Property pode ser inserido pelo usuário por meio de um controle MaskedEdit especificado definindo a PIDTemplate Property como uma cadeia de caracteres como a seguinte:

12345<### -%%%%%%%>@@@@@

A cadeia de caracteres define o modelo de mascaramento para a entrada do PIDKEY Property pelo usuário. O segmento visível da cadeia de caracteres é delimitado por um par de caracteres entre colchetes (<>).

A tabela a seguir identificou a sintaxe da máscara.

Personagem Significado
< A extremidade esquerda do segmento visível do modelo. Este caractere e tudo à sua esquerda estão ocultos na interface do usuário. Não deve haver mais de uma instância desse caractere no modelo.
> A extremidade direita do segmento visível do modelo. Este caractere e tudo à sua direita estão ocultos na interface do usuário. Esse caractere é substituído por um traço durante a validação. Se houver um segmento visível começa com <, então ele deve ser terminado com uma correspondência >.
# Este caractere pode ser um dígito (numeral).
% Esse caractere pode ser um dígito alternativo (numeral) que permite que a máscara controle a maneira como uma ação personalizada diferencia campos.
@ Este caractere pode ser um dígito aleatório (numeral). Esse caractere não deve aparecer na parte visível do modelo.
& Este personagem pode ser qualquer personagem.
^ Esse caractere pode ser um caractere alternativo que permite que a máscara controle a maneira como uma ação personalizada diferencia campos.
? Esse caractere pode ser um caractere alternativo que permite que a máscara controle a maneira como uma ação personalizada diferencia campos.
` As marcas de acento grave ' (valor ASCII 96) podem representar um caractere alternativo que permite que a máscara controle a maneira como uma ação personalizada diferencia campos.
_ Este personagem é um personagem de sublinhado literal.
= Este caractere é o terminador de campo. Isso deve seguir um #, %, ^ ou '. Isso cria mais uma posição de entrada do mesmo tipo das posições anteriores e termina o campo com um separador '-'.

 

Qualquer outro caractere é tratado como uma constante literal.

Para caracteres que podem ser editados, o controle cria janelas de edição separadas com uma janela para cada bloco de caracteres contíguos do mesmo tipo.

Atributos de controle

Para alterar o valor de um atributo que está usando um evento, inscreva o controle em um evento Control no Tabela EventMapping e liste o identificador de atributo na coluna Atributo. Insira o identificador do evento Control na coluna Evento. Você pode usar os seguintes atributos com o controle MaskedEdit.

Atributo Hexadecimal Bit Descrição
IndirectPropertyName Este é o nome de uma propriedade indireta que está 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 for definido, esse nome também será o valor da propriedade listada na coluna Propriedade da Tabela de Controle .
Posição Posição do controle na caixa de diálogo. Insira a largura, a altura e as coordenadas do canto esquerdo do controle nas colunas Largura, Altura, X e Y da Tabela de Controle . Use Installer Units para comprimento e distância.
PropertyName Este é o nome da propriedade que está associada a esse controle. Se o bit do atributo indireto não estiver definido, o controle exibirá ou alterará o valor da propriedade que tem esse nome. Este atributo é especificado na coluna Propriedade da Tabela de Controle .
PropertyValue Valor atual da propriedade que é exibida ou alterada por esse controle. Se o bit do atributo indireto não estiver definido, esse será o valor de PropertyName. Se o bit do 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 texto, prefixe a cadeia de caracteres exibidos com {\style} ou {&style}. Onde style é um identificador listado na coluna Style da TextStyle Table. Se nenhum deles estiver presente, mas a DefaultUIFont Property for definida como um estilo de texto válido, essa fonte será usada. A cadeia de caracteres que especifica o modelo de mascaramento segue esse prefixo e usa a sintaxe descrita anteriormente neste tópico.
visível 0x00000000 0x00000001
Controle oculto. Controlo visível.
Inclua esse bit na palavra bit da coluna Atributos na Tabela de Controle para tornar o controle visível ou oculto quando ele for criado.
Você também pode ocultar ou mostrar um controle usando o 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 Tabela de Controle para habilitar o controle na criação.
Você também pode habilitar ou desabilitar um controle usando o 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 do Tabela de Controle.
indireta 0x00000000 0x00000008
O controle exibe ou altera o valor da propriedade na coluna Propriedade do Tabela de Controle. O controle exibe ou altera o valor da propriedade que tem o identificador listado na coluna Propriedade do Tabela de Controle.
Determina se a propriedade associada a esse controle é referenciada indiretamente.

 

Comentários

O controle MaskedEdit cria uma janela pai da classe BUTTON com os estilos BS_OWNERDRAW e WS_EX_CONTROLPARENT. Ele cria várias janelas filho para esta janela.

  • Para partes de texto constantes, ele cria janelas STATIC com os estilos SS_LEFT e WS_CHILD.
  • Para campos editáveis, ele cria uma janela EDIT com os estilos WS_CHILD, WS_BORDERe WS_TABSTOP.
  • Para campos numéricos, a janela também tem o estilo ES_NUMBER.

Os campos de dígitos alternativos, %e caracteres alfanuméricos alternativos, ^, ?, e ' permitem que ações personalizadas diferenciem entre campos de uma forma que possa ser controlada pela máscara, por exemplo, ^ pode ser usado para campos que devem ser maiúsculos.