DavidSena 0 Denunciar post Postado Janeiro 30, 2004 Por favor , como devo fazer para que a equação passe a funcionar corretamente : Tenho dois campos de texto dinâmicos um pra Peso(_root.p) outro pra altura corporal(_root.a).E o calculo objetivado é IMC = p/a*a contudo o meu problema é que os usuários sempre colocam na altura 1,70(um metro e "virgula"50 centrimetros) e não 1.70("ponto").como o flash so reconhece se estiver com .("ponto") a equaçào não funciona.O que devo fazer pra que qnd o usuário digite uma ,("virgula") o pc reconheça como .("ponto") Abaixo o codigo atual que esta dando errado:onClipEvent (enterFrame) { if (_root.peso == 0 or _root.alt == 0) { _root.imc = 0; } else { _root.imc = _root.peso/(_root.alt*_root.alt); }}Obrigado desde ja! Compartilhar este post Link para o post Compartilhar em outros sites
Leandro Ferreira 0 Denunciar post Postado Janeiro 31, 2004 veja se funciona: function pontovirgula(campo) {for(a=0;a<eval(campo).length;a++) {if(eval(campo).substring(a,a+1) == ",") {eval(campo).substring(a,a+1) = "."}}}pontovirgula("_root.p")pontovirgula("_root.a") Compartilhar este post Link para o post Compartilhar em outros sites
DavidSena 0 Denunciar post Postado Janeiro 31, 2004 Desculpe-me Durang mas não entendi como você fez!Tentei apenas copiar e colar mas tb não funcionou por algum motivo!Poderia reestrever como você fez!Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
Leandro Ferreira 0 Denunciar post Postado Janeiro 31, 2004 fiz algumas correções, agora deve funcionar function pontovirgula(inicio) { retorno = "" for (a=0; a<inicio.length; a++) { inicio.substring(a, a+1) == "," ? retorno += "." : retorno += inicio.substring(a, a+1); } return(retorno)}campo.text = pontovirgula(campo.text) Compartilhar este post Link para o post Compartilhar em outros sites
DavidSena 0 Denunciar post Postado Janeiro 31, 2004 Durang não sei o qeu esta acontecendo mas ainda não funciona!coloquei a função você me deu (uso o flash MX ingles)junto com meu codigo previo:onClipEvent (enterFrame) {if (_root.peso == 0 or _root.alt == 0) {_root.imc = 0;} else {_root.imc = _root.peso/(_root.alt*_root.alt);}} Modificando os nomes das variáveis ou deixando do jeito que você me enviou!Realmente não sei o que acontece pois não entendi muito bem o principio do seu codigo por ignorancia minha!Muito obrigado pela atenção vou tentar estudar seu codigo mesmo assim!Valeu! :( Compartilhar este post Link para o post Compartilhar em outros sites
Leandro Ferreira 0 Denunciar post Postado Janeiro 31, 2004 onClipEvent(load) {function pontovirgula(inicio) {retorno = "" for (a=0; a<inicio.length; a++) { inicio.substring(a, a+1) == "," ? retorno += "." : retorno += inicio.substring(a, a+1);}return(retorno)}}onClipEvent (enterFrame) {if (_root.peso == 0 or _root.alt == 0) {_root.imc = 0;} else {_root.peso = pontovirgula(_root.peso)_root.alt = pontovirgula(_root.alt)_root.imc = _root.peso/(_root.alt*_root.alt);}} Compartilhar este post Link para o post Compartilhar em outros sites
DavidSena 0 Denunciar post Postado Fevereiro 1, 2004 Ah agora deu certo !Não sei o que você mudou mas deu certo!Muito obrigado mesmo ! Compartilhar este post Link para o post Compartilhar em outros sites