Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Evandro Sousa

[Resolvido] Pontos e virgulas automaticos em textBox.

Recommended Posts

Boa tarde pessoal, beleza?

Eu gostaria de saber como posso fazer para que um txt possa ser preenchido automatico com "." e ",", por exemplo:

eu irei digitar 1234515. Só que quando eu estiver digitando o text já vai colocando os pontos e virgulas nos lugares corretos: 12.345,15.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá quintelab, então eu já utilizei o maskEdit, porém ele acabou nao servindo para mim, pois eu nao sei ao certo o tamanho do valor que terei, pode ser q eu tenha centavos, como pode ser que eu tenha milhões. Eu tentei utiliza-lo, mas acabou não dando certo.

Você conhece alguma outra maneira de fazer isso?

 

Me desculpe a insistência.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Evandro, veja se isso resolve, eu formato o valor digitado assim que o textbox perde o foco.

 

Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus

        TextBox1.Text = FormatNumber(TextBox1.Text, 2, TriState.True, TriState.True, TriState.True)

    End Sub

abç

Sérgio

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sergio muito obrigado, mas eu já tinha resolvido e esqueci de comentar aqui.

Eu fiz um metodo onde verificava e preenchia de acordo com o tamanho do meu campo.

 

Vou deixar o código aqui, se alguém precisar:

 

        public string RetornaMascaraMonetaria(int tamanho)
        {
            if (tamanho == 3)
            {
                return "0.00";
            }
            else if (tamanho == 4)
            {
                return "00.00";  
            }
            else if (tamanho == 5)
            {
                return "000.00";
            }
            else if (tamanho == 6)
            {
                return "0,000.00";
            }
            else if (tamanho == 7)
            {
                return "00,000.00";                
            }
            else if (tamanho == 8)
            {
                return "000,000.00";
            }
            else if (tamanho == 9)
            {
                return "0,000,000.00";
            }
            else if (tamanho == 10)
            {
                return "00,000,000.00";
            }
            else if (tamanho == 11)
            {
                return "000,000,000.00";
            }
            else if (tamanho == 12)
            {
                return "0,000,000,000.00";
            }
            else if (tamanho == 13)
            {
                return "00,000,000,000.00";
            }
            else if (tamanho == 14)
            {
                return "000,000,000,000.00";
            }
            else if (tamanho == 15)
            {
                return "0,000,000,000,000.00";
            }
            else
            {
                return "";
            }
        }

Isso é feito na hora do evento Leave do textBox.

 

No Leave eu tenho o seguinte codigo.

 

        private void txtCustoCompra_Leave_1(object sender, EventArgs e)
        {
            string valor = txtCustoCompra.Text;

            if (valor.Length == 1)
            {
                valor = "00" + txtCustoCompra.Text.Replace(",", string.Empty).Trim().ToString();
            }
            else if(valor.Length == 2)
            {
                valor = "0" + txtCustoCompra.Text.Replace(",", string.Empty).Trim().ToString();
            }

            int tamanho = valor.Length;

            txtCustoCompra.Mask = objBllUtilitarios.RetornaMascaraMonetaria(tamanho);
            txtCustoCompra.Text = valor;

            txtCustoCompra.BackColor = Color.White;

        }

Muito obridago pela intenção.

 

Evandro, veja se isso resolve, eu formato o valor digitado assim que o textbox perde o foco.

 

Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus

        TextBox1.Text = FormatNumber(TextBox1.Text, 2, TriState.True, TriState.True, TriState.True)

    End Sub

abç

Sérgio

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.