Marcos Costa
unread,Apr 26, 2011, 6:51:47 PM4/26/11Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to etecpg 2ª semestre 2010
Fala galera
Tenho ficado meio ausente por um tempo e faz uma cotinha que não venho
aqui.
Bom, vou voltar contribuindo com o método Replace.
Sei que alguns na sala tiveram problemas com o bendito R$ nas textbox.
E também sei que assim como eu, alguns queriam manter o R$ na textbox
e ainda conseguir efetuar os cálculos com aquele conteúdo, sem que o
software dê o famoso P.A.L.
Bom, vou demonstrar aqui como resolvi este problema, ou seja,
explicarei o método Replace().
REPLACE
O Replace é um método que busca em uma String (primeiro parâmetro) uma
segunda String (segundo paramêtro) e a substitui por uma terceira
String (terceiro paramêtro). Se a segunda String não existir dentro da
primeira, ométodo simplesmente não faz nada.
Vamos a um exemplo simples:
Dim lp As String
lp = "VB é uma linguagem de programação excelente. Pois VB é prático e
dinâmico."
lp = Replace(lp,"VB", "Java")
Sala terminou com o valor: "Java é uma linguagem de programação
excelente. Pois Java é prático e dinâmico.
Ou seja, todas as ocorrâncias de "VB" (segundo parâmetro) dentro da
String lp (primeiro parâmetro) foram substituídas por Java (terceiro
parâmetro).
R$ NÃO É MAIS PROBLEMA
Bom, vamos agora nos livrar do problema com o R$.
Como alguns já devem imaginar, a solução é simples. Antes do exemplo,
não esqueça de que é "R$ ", com um espaço após o cifrão. Se o espaço
não for removido da textbox, continua o erro. . Vamos então ao código:
Exemplo passo a passo:
txt_valor = Replace(txt_valor, "R$ ", "")
Dim valor As Double
valor = Double.Parse(txt_valor, "R$ ", "")
txt_valor = FormatCurrency(valor)
No exemplo acima, nós praticamente removemos o R$ da TexTbox e o
recolocamos.É funcional, mas não tão bom quanto o próximo exemplo.
Obs: reparem que a terceira String, a substituta, é aspas duplas
vazias.
Exemplo direto (cuidado com os parenteses:
Dim valor As Double
valor = Doule.Parse(Replace(txt_valor, "R$ ", ""))
Este exemplo é mais prático e o valor da textbox não chega a mudar, já
que a variável pega o retorno do método, que no caso é a textbox sem o
R$, e não o conteúdo da textbox diretamente.
Bom galera, essa foi mais uma contribuição.
Até Handles e Eventos, que já estou devendo a um tempinho. Talves up
ainda hoje, mas não garanto.
Marcos Costa