..:: MX Studio Fóruns ::..: Máscara de entrada de dados no input text - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Máscara de entrada de dados no input text Como fazer isso e campos dinâmicos?

#1 User is offline   DanielGianni 

  • Group: Membros
  • Posts: 33
  • Joined: 28-February 05

Posted 29 August 2005 - 03:56 PM

Vamos por partes:

1o) como criar uma máscara dentro do input text para entrada de dados formatados conforme esse exemplo:

Telefone: (__) ____-______
Cpf: ___.____.____-__


2o) como criar campos dinamicamente dado o exemplo abaixo?

a partir da escolha de um radiobox,

(*) Masculino
( ) Feminino

o flash deve criar um listbox com o conteúdo de um array para a escolha Masculino

Pedro
Paulo
Carlos

e para feminino

Maria
Josefina




0

#2 User is offline   DanielGianni 

  • Group: Membros
  • Posts: 33
  • Joined: 28-February 05

  Posted 08 September 2005 - 02:52 PM

Gente não é possível que ninguém tenha situação parecida?!

(máscara de entrada de dados)

Colocar pontos, traço e barra no CNPJ
Colocar traço no CEP
Colocar pontos e traço no CPF
Colocar parênteses no DDD e traço no TELEFONE

Ninguém poderia me ajudar a pensar em uma solução?

Talvez pegar o foco do componente text input, bloqueá-lo para não deixar escrever nele, ler as teclas pressionadas e ir preenchendo dinamicamente? não sei, não estou conseguindo nem pensar em uma lógica para isso!
0

#3 User is offline   Copacubano 

  • Group: Membros
  • Posts: 152
  • Joined: 17-April 04

  Posted 08 September 2005 - 05:23 PM

Koé Daniel !! Beleza ?

1)Sobre a mácara eu consegui fazendo o seguinte ... a pessoa digita no campo e qdo dá TAB e o o focus vai pro campo2... aciono a instrução de formatar o campo1 ... dou lá um substring no campo1 e formato com o ponto, virula e traço necessário pra máscara... não é o q vc quer e nem o q eu queria ... mas no final quebrou o galho .... ainda quero conseguir formatar no mesmo momento q a pessoa digita.

2) Sobre a Combo ... ela vai estar fixa ou virá de um banco ?
vc vai ter q usar um Listener .. onde faça q qdo escolher o radio masculino venha a combo (ou carregue) masculino e qdo escolher a outra opção faça o mesmo..com o feminino. sacou ?

Abraços


Anderson
0

#4 User is offline   pcsilva 

  • Group: Moderadores
  • Posts: 1940
  • Joined: 23-January 05

Posted 09 September 2005 - 12:36 AM

Vê isso ai
http://www.geocities.com/flashy_sid/MEControl.html
http://www.interaktonline.com/Products/Bun...ic%20Textfields

0

#5 User is offline   DanielGianni 

  • Group: Membros
  • Posts: 33
  • Joined: 28-February 05

  Posted 09 September 2005 - 04:13 PM

Bom com a ajuda estou avançando, vamos ver se conseguidos desenvolver algo juntos.

Copacubano, veja só:

ActionScript

// vamos definir uma mascara
// 99999-999
campo1.text = "99999-999";

// vai ser o ouvinte do campo1
var ouveCampo1 : Object = new Object();

// ouvinte para tratar alguma coisa digitada
ouveCampo1.change = function():Void {
       var vetor:Array;
       vetor = campo1.text.split("");
       trace(vetor);
}
// ouvinte para Tratar o foco do campo
ouveCampo1.focusIn = function(texto:String):Void {
       var numeros:Array;
       // vamos verificar se tem mascara inicial
       if (texto.length>0) {
             for (i=0;i<=texto.length;i++) {
                   // vamos verificar onde tem o 9 na mascara
                   // e guardar a posicao
                   if (texto.charAt(i) == "9") {
                         numeros.push(i);
                         // temos que substituir os 9 por _
                   }
             }
             trace(numeros);
       }
}
campo1.addEventListener("focusIn",ouveCampo1,campo1.text);
campo1.addEventListener("change",ouveCampo1);



Sei que o código acima tá muito ridículo e errado, mas usei apenas para exercitar a lógica.

Consideremos 1 text input, cuja instancia no palco chama campo1.

O que temos que fazer???

1o - definir uma máscara, vamos usar o padrão 9 para número e qualquer outro sinal ( ) - / para separadores.

2o - temos que preencher o local onde serão digitados os números (no lugar dos 9) trocar por um _ (underscore) para ficar igual aos maskedit do delphi ou vb.

3o - quando o campo1 receber o foco, o cursor tem que ser posicionado na 1o posicao de digitação (seria a posição do 1o 9 na máscara)

4o - quando for digitado alguma coisa, temos que substituir a posição atual do cursor no campo pelo conteúdo digitado.

5o - verificar se a próxima posição do cursor cair em um separador, devemos pular o cursor para a próxima posição digitável.

6o - se for digitado [backspace] devemos retornar o _ na posição anterior a qual está o cursor

7o - se for pressionado [del] devemos trocar a próxima posição por _


Veja se a lógica tá melhorando e de suas sugestões, vamos tentar desenvolver algo assim.

Talvez herdar as propriedades da classe Text Input e extender as funcionalidade dela (eu não sei ainda mexer com herança direito em AS2.0)

Agora o que tá pegando é que não tenho a mínima idéia de como saber qual a posição do cursor dentro do text input e mesmo como movê para outra posição.

Espero nova interação, enquanto isso vou continuar tenatndo por aqui.
0

#6 User is offline   Copacubano 

  • Group: Membros
  • Posts: 152
  • Joined: 17-April 04

  Posted 09 September 2005 - 07:11 PM

Segue um pedaço do meu código que tentei explicar.

CODE

Campo2.onSetFocus=function(){
if((nu_DDD.length)==2){
DDD_nu = "(" + nu_DDD.text.substring(0,2) + ")";
nu_DDD.text = DDD_nu;
}

if((nu_Telefone.length)==8){
TEL_nu = nu_Telefone.text.substring(0,4) + "-" + nu_Telefone.text.substring(4,8);
nu_Telefone.text = TEL_nu;
}
}


Ae está acertando o campo de DDD e do do Telefone ....
Mas da forma q eu fiz...como sou iniciante.... eu repeti o código pra cada campo (campo1, campo2, campo3, ....)
O correto é qdo der onSetFocus ... chamar a função onde verifica os campos ...com isso não precisa fazer o q acabei fazendo por minhas limitações ...repetir o código pra cada onSetFocus.

Sacou ?

Essa mesma estrutura é o de CEP, CPF, CNPJ e assim vai...

Não sei se seria uma função ou o Listener... tenho q estudar mais sobre Listener.

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)