Ir para o conteúdo
williamjda

[Resolvido] Mascara para milimetro 0.000

Mensagens Recomendadas

williamjda

Amigos, bom dia.

Tenho um questão que neste caso não sei como começar a fazer até porque é a primeira vez que preciso deste recurso.

Preciso saber como fazer uma mascara para milimetro

Tenho um campo textbox e preciso que ele fique com uma mascara onde ao digitar fique igual aos itens abaixo:

0.000 se não for digitado nada.

1.000

0.500

0.022

0.001

Eu tenho uma mascara para reais mas para isso não sei como fazer. Alguém pode me ajudar? Obrigado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
williamjda

Amigo consegui chegar apenas neste resultado.

Dim texto As String
Dim textofinal As String
Dim tamanho As Integer

textofinal = ""
texto = textbox1.text.ToString
If textbox1.Text.Length <4 Then
tamanho = TextBox1.Text.Length
For t As Integer = 1 To 4 - Tamanho
textofinal = textofinal & "0"
Next
textbox1.Text = textofinal & TextBox1.Text
End If
If TextBox1.Text = "0000" Then

Ele preenche os campos restantes com 0. Porem como colocar o Ponto (.)?

Se eu colocar a maskedtextbox ele resolve em partes junto ao que eu ja fiz. Se o numero digitado for

1.600

0.500

0.020

0.001

Porem Se o numero for maior que 9.999 ja não daria certo. Pois o ponto no maskedtextbox é fixo. E ele deve entrar automaticamente de acordo com o valor digitado.

Como na mascara de moeda abaixo: (POREM SEM A VIGULA)

https://sites.google.com/site/programacaoonline/family-blog/vb-net/textbox-com-mascara-moeda-em-vb-net

Teria que ficar assim: 9.999, 99.999 ou 999.999

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
vikcch

Código em vb6, também deve funcionar em vb.net (não o tenho instalado)

Dim texto As String
texto = "2312.500"
Text1.Text = Format(Replace(texto, ".", ","), "###,##0.000")

Editado por apocsantos
geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
vikcch

aceita o separador decimal como ponto e como virgula.... tá um bocado confuso mas parece tar ok..

Dim texto As String = "2312,5"
TextBox1.Text = String.Format("{0:0,0.000}", val(Replace(texto, ",", ".")))

output 2,312.500

Editado por apocsantos
geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
williamjda

Amigos obrigado. Deu certo.

Mas tive que fazer uma pequena mudança.

Dim texto As String = TextBox1.Text
    TextBox1.Text = String.Format("{0:0,0}", Val(Replace(texto, ",", ".")))

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.