1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

ajuda com a textbox no VB2005

Discussão em 'Programação' iniciada por 57orm, 28 de Setembro de 2007. (Respostas: 3; Visualizações: 944)

  1. 57orm

    57orm Power Member

    Boas... Gostaria de saber como e que se configura uma textbox para só deixar escrever numeros??? ficarei há espera das vossas respostas...:kfold:
     
  2. 57orm

    57orm Power Member

    Pff ajudem.me... perciso mesmo de saber como e que se consegue configurar uma textbox de modo a que ela so se possa digitar numeros....
    pff
     
  3. balute

    balute Power Member

    Código:
        Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
            Dim texto As String = "" 'string que substituirá o texto actual na textbox
            For Each c As Char In TextBox1.Text 'percorre todos os caracteres
                If Asc(c) <= 57 AndAlso Asc(c) >= 48 Then texto &= c 'se este caractere for um número, adiciona-o à string
            Next
            Dim posicao As Integer = TextBox1.SelectionStart - (TextBox1.TextLength - texto.Length) 'nova posição do cursor dentro da textbox
            TextBox1.Text = texto 'substituir o texto antigo pelo novo, já filtrado
            TextBox1.Select(posicao, 0) 'colocar o cursor na devida posição
        End Sub
    Basicamente o que isto faz é, por cada vez que o texto da textbox é alterado, ele re-escreve o texto, filtrando os caracteres que não são números. Também funciona quando se tenta colar texto (com vários caracteres).

    O controlo NumericUpDown possui esta funcionalidade já de raiz, não sendo necessário adicionar qualquer código.
     
  4. alfinete

    alfinete Power Member

Partilhar esta Página