usar inputmask

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

jcsprog
Usuário Nível 2
Usuário Nível 2
Mensagens: 63
Registrado em: 27 Abr 2005 12:04
Localização: sao paulo - jd.brasil

usar inputmask

Mensagem por jcsprog »

ola como utilizar inputmask ao trazer um dado do arquivo sem mascara , mostrar com e devolver sem tem alum format ou inputmask

no arquivo tenho 12345556000198
mostrar 12.345.556/0001-98 aberto a modificações
gravar no arquivo 1234555600198

agradeço a atenção
jcsprog
jcsprog
Usuário Nível 2
Usuário Nível 2
Mensagens: 63
Registrado em: 27 Abr 2005 12:04
Localização: sao paulo - jd.brasil

Re: usar inputmask

Mensagem por jcsprog »

fala galera achei a solução

Form.Cnpj.Value := TransForm(arq->cnpj,'@R 99.999.999/9999-99')

valeu galera
jcsprog
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Re: usar inputmask

Mensagem por Mario Mesquita »

Boa noite, amigos.

Aproveitando o tema pergunto:

Como ponho no INPUTMASK para formatar numeros no modo "9.999,99"? Já tentei o velho "@E 9,999.99", "E 9,999.99", "E: 9,999.99", Todos deram erro em tempo de execução.

Como sempre, obrigado pela ajuda,
Mario.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Re: usar inputmask

Mensagem por asimoes »

Tenta isso:

NUMERIC INPUTMASK '9,999,999,999.99' FORMAT 'E'

@450,550 TEXTBOX T_ImpReserva ;
WIDTH 100 HEIGHT 20 ;
VALUE 0 ;
NUMERIC INPUTMASK '9,999,999,999.99' FORMAT 'E' ;
RIGHTALIGN
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Re: usar inputmask

Mensagem por asimoes »

Olá

Eu usária getbox no lugar de textbox veja:

Código: Selecionar todos

    DEFINE GETBOX oValorRecebido
         ROW 032
         COL 160
         WIDTH 80
         HEIGHT 25
         VALUE nValorPago
         PICTURE "@E 999.99"
         FONTNAME cFonte
         FONTSIZE 12
         VALID {||ValidaValor(This.Value)}
         FONTCOLOR _VERDE
         BACKCOLOR _BLUE3
         ON GOTFOCUS {||This.BackColor:=_YELLOW2,This.CaretPos:=0}
         ON LOSTFOCUS This.BackColor:=_BLUE3
         TOOLTIP ""
      END GETBOX
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Re: usar inputmask

Mensagem por Mario Mesquita »

Bom dia a todos.

Obrigado pela ajuda, mas estou usando a IDE do HMG, então não dá pra mexer no form diretamente.

Quando coloco "@E 99,999.99" em INPUTMASK, ele compila, mas dá um erro em tempo de execução:

"@ ... TEXTBOX: Wrong InputMask Definition"

O TEXTBOX está numérico, então não entendo. Curioso é que num BROWSE que uso, tem uma InputMask de uma coluna como "@E 99,999.99" e funciona normalmente.

Se alguem tiver uma noção do que acontece, desde já agradeço.

Saudações,
Mario.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

usar inputmask

Mensagem por Pablo César »

Mario, talvez seja questão de mudar de numérico para caracter essa expressão, prove.
estou usando a IDE do HMG, então não dá pra mexer no form diretamente
Ja experimentou pegar o código desse form e colocar como parte do código ?. Na IDE da HMG você clica duas vezes no form (visualizará na tela) e no menu "Visualizar" ou "View" (se ainda não estiver configurado para português) e "Código do Formulário" ou "Form Code" para mostrar o código, daí é só marcar e colar parte do código, como se fosse fazer as telas na munheca. Também tem um aplicativo que converte os Fmgs para Prgs. Talvez assim vocÊ possa interagir melhor nas telas.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Re: usar inputmask

Mensagem por Mario Mesquita »

Olá, Pablo.

Seria uma possibilidade a ser estudada, mas a IDE adianta o lado muita coisa, apesar de sentir as vezes falta de mexer no codigo diretamente. Com o tempo e mais experiencia penso ser uma alternativa interessante. Mas, nesse momento tenho uma certa urgencia e esse form é enorme, com um TAB de duas abas e uns quase 50 campos de informação.

Acho estranho é uma coisa tão básica como o velho PICTURE não funcionar bem numa ferramenta tão moderna.

Obrigado pela dica.

Abraço,
Mario.
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Re: usar inputmask

Mensagem por Mario Mesquita »

Pessoal, ultima forma:

Para formatar o campo numérico, além do INPUTMASK, deve-se colocar "E" em FORMAT. Li o guia da MiniGui, mas não tinha entendido. Agora foi...

Vivendo e aprendendo.

Abraço a todos,
Mario.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Re: usar inputmask

Mensagem por asimoes »

Mário,
Mario Mesquita escreveu:"@ ... TEXTBOX: Wrong InputMask Definition"
você tentou isso:

@450,550 TEXTBOX T_ImpReserva ;
WIDTH 100 HEIGHT 20 ;
VALUE 0 ;
NUMERIC INPUTMASK '9,999,999,999.99' FORMAT 'E' ;
RIGHTALIGN

O FORMAT 'E' equivale ao @E

[]s
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Re: usar inputmask

Mensagem por asimoes »

Mário,

Você não leu o meu post!
Já estaria resolvido.

[]´s
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Re: usar inputmask

Mensagem por Mario Mesquita »

Oi, Asimoes.

Eu li. Só que eu estou usando a IDE, então não tenho como mexer do script do Form. Na verdade, resolvi na própria IDE, pois o "E" entra na propriedade FORMAT.

É que ainda estou meio verde em HMG. Mas com a ajuda de voces aqui do forum, tenho progredido.

Obrigado pela força!

Abraço,
Mario.
microvolution
Usuário Nível 5
Usuário Nível 5
Mensagens: 1231
Registrado em: 02 Set 2011 22:17
Contato:

usar inputmask

Mensagem por microvolution »

Pessoal boa noite!
Hoje é que estou tentando entender esse "tal de inputmask".
Bom, nas minhas 2 linhas a seguir, geram esse erro:
C:\MVinfo\MIGRAR\SiCCA\SiCCA3603hmg\sci10000\pci10011.prg(4419) Error E0030 Syntax error "syntax error at '@'"
C:\MVinfo\MIGRAR\SiCCA\SiCCA3603hmg\sci10000\pci10011.prg(4420) Error E0030 Syntax error "syntax error at '@'"

Código: Selecionar todos

                @ 370 , 470 TEXTBOX txtCDPRODUTO  PARENT Frm_TELA_ENTRADA WIDTH 150 HEIGHT 30 FONTCOLOR BLUE BOLD NUMERIC  INPUTMASK '999.999' FORMAT 'E'  MAXLENGTH 13 ON ENTER { || fCDPRODUTO_GUI () } // 
                @ 370 , 570 TEXTBOX txtQT_VENDA   PARENT Frm_TELA_ENTRADA WIDTH  35 HEIGHT 30 FONTCOLOR BLUE BOLD NUMERIC  INPUTMASK pQT_VENDA FORMAT 'E'  MAXLENGTH 13 ON ENTER { || fQT_VENDA_GUI () } // 
O que pode estar errado?
PS: Se eu retirar o INPUTMASK o erro para de aparecer e compila normalmente.
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!


Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

usar inputmask

Mensagem por Toledo »

Amigo, em TEXTBOX numérico (NUMERIC) com INPUTMASK não é necessário MAXLENGTH, então excluir MAXLENGTH 13.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
microvolution
Usuário Nível 5
Usuário Nível 5
Mensagens: 1231
Registrado em: 02 Set 2011 22:17
Contato:

usar inputmask

Mensagem por microvolution »

bom dia!
tirei o MAXLENGTH e voltei o INPUTMASK e deu a seguinte mensagem de erro:
Date:16/03/2016 Time: 09:08:29
Error: HMG 3.4.2 Stable (32 bits)
@...TEXTBOX: Wrong InputMask Definition
Called from _DEFINEMASKEDTEXTBOX(282)
Called from CAD_PRODUTOS_GUI(4386)
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!


Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
Responder