DUAS DUVIDAS SOBRE PRESSIONAMENTO DE TECLAS

WEBIER 18/06/2010 12:17:37
#345182
tenho duas duvidas sobre pressionamento de teclas:

duvida 1:
Gostaria que quando eu pressionasse o ponto (.) ele trocasse automaticamente por virgula (,)

duvida 2:
dentro de um textbox não aceitar nenhuma tecla alem de 0 (zero) até 9 e virgula.... quando eu precionasse a letra A por exemplo, não aparecesse.... e nem outra qualquer... somente numero e virgula
JAMESBOND007 18/06/2010 12:21:58
#345184
tenho esses
       If  ((e.KeyChar < [Ô]0[Ô]) Or (e.KeyChar > [Ô]9[Ô])  And (e.KeyChar  <> Chr(8))) Then
Beep()
e.Handled = True
End If

ou

If Not IsNumeric(Chr(KeyAscii)) and KeyAscii <> 8 Then
msgbox [Ô]Digite apenas números por favor!![Ô]
KeyAscii = 0
Exit Sub
End If


só numeros
JAMESBOND007 18/06/2010 12:29:32
#345185
ve se esse topico pode te ajudar tabem com relaca as virgulas
www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=337647&varWorld=
JAMESBOND007 18/06/2010 12:34:02
#345187
ou digite isso aqui no evento keypress do text para so aceitar numeros
Select Case KeyAscii

Case 48 To 57, vbKeyBack, vbKeyDelete
Case Else: KeyAscii = 0

End Select

WEBIER 18/06/2010 13:18:38
#345192
Esse de trocar o ponto por virgula eu nao entendi
JONATHANSTECKER 18/06/2010 13:21:45
#345193
Tente assim:

Private Sub tbxMicrons_Fundo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbxMicrons_Fundo.KeyPress

[ô]Somente números, pontos e vírgulas.
If Not Char.IsNumber(e.KeyChar) _
And Not e.KeyChar = vbBack _
And Not e.KeyChar = [Ô].[Ô] _
And Not e.KeyChar = [Ô],[Ô] Then
e.Handled = True
End If

Dim iAscii As Integer

iAscii = Asc(e.KeyChar)

Select Case iAscii
Case 48 To 57, 8, 13, 44
Case 46
e.KeyChar = vbBack
e.KeyChar = [Ô],[Ô]
End Select

End Sub

MSMJUDAS 19/06/2010 09:20:15
#345250
Resposta escolhida
Essa função já faz as duas coisas que vc quer:

Public Function VerificaValor(vTecla As Integer) As Integer
[ô] Função para permitir apenas a digitação de valores
Select Case vTecla
Case 8, 44, 48 To 57
VerificaValor = vTecla
Case 46
VerificaValor = 44
Case Else
VerificaValor = 0
End Select
End Function
WEBIER 20/06/2010 22:08:45
#345322
MSMJUDAS, como eu faço para usar ela no textbox ?
MSMJUDAS 21/06/2010 08:37:26
#345332
Citação:

:
MSMJUDAS, como eu faço para usar ela no textbox ?



Vc tem que usar a função no KeyPress do campo texto, ex.:


Private Sub TxtNumeros_KeyPress(KeyAscii As Integer)
KeyAscii = VerificaValor(KeyAscii)
End Sub
Tópico encerrado , respostas não são mais permitidas