Os trechos abaixo foram tirados do Samples\Applications\Agenda do MINIGUI 3.3.1.
Eu sei que o assunto já foi várias vezes ventilado neste fórum, mas nos exemplos, mesmo nas novas versões (estou usando a 3.3.1), os mais recentes tutoriais essas colocações de entrada de dados ficam
muito a dever.
Como uso Clipper há muito tempo, tento colocar as coisas da forma como ele faz:
@ xx,yy say "....................." get campo pict "@R ........." valid (alguma função)
read
ou seja, o GET / READ resolve todas as nossas entrada e apresentação em tela, dando entrada, consistindo, criticando tudo o que for necessário, não deixando passar nada de errado.
No Minigui se você terminar um campo com TAB é uma coisa, se terminar com ENTER é outra...
Para exemplo inicial, uso um arquivo simples onde o campo CEP tem 8 caracteres, sem pontuação e sem mais nada.
Eu quero apenas usar as formas de exibição apenas nas telas de entrada de dados, para orientação do operador.
O componente LABEL dentro do DEFINE WINDOW FORM_2 está assim colocado:
Código: Selecionar todos
@100,360 LABEL Label_Cep ;
VALUE 'Cep' ;
WIDTH 80 ;
HEIGHT 30 ;
FONT 'Arial' SIZE 09 ;
BACKCOLOR WHITE ;
FONTCOLOR BLUE BOLDO componente TEXTBOX está assim redigido, aduzindo que o campo CCEP é obtido pelo comando:
cCep := AllTrim( Agenda->Cep)
Código: Selecionar todos
@103,390 TEXTBOX T_Cep ;
OF Form_2 ;
WIDTH 80 ;
VALUE ccep ;
TOOLTIP 'Cep do Contato' ;
MAXLENGTH 08 ;
UPPERCASE ;
ON ENTER Form_2.T_Cidade.SetFocus Agenda->Cep := Form_2.T_Cep.Value
Ou seja, no campo gravado não irá nada além dos 8 algarismos do CEP.
Eu quero usar dentro das estruturas a forma INPUTMASK, sem recorrer à nenhuma função externa, que somente vai complicar (por ora), tais como gerar outro campo com o uso de TRANSFORM, etc.
Outra coisa: o que faço para tirar da compilação dos exemplos aquelas mensagens do como que aparecem no rodapé da tela, inclusive uma que faz a propaganda do finado GEOCITIES
