TEXTBOX SO ACEITA S OU N

ELMO01 14/03/2023 14:57:44
#501132
Oi pessoal

Como faço paa que um textbox aceite somente as letras "S" ou "N"

Obrigado

Elmo
WEBMASTER 14/03/2023 16:17:54
#501133
Não testei 100%, mas deve ser algo perto disso..

  
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
If e.KeyChar.ToString <> "S" And e.KeyChar.ToString <> "N" Then
e.Handled = True
End If
End Sub
ELMO01 14/03/2023 16:20:46
#501135
Vou testar, mais mesmo assim agradeço a atenção
DJROBERTOSC 14/03/2023 17:44:14
#501136
Private Sub txtnome_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtnome.KeyPress
If e.KeyChar.ToString <> "s" And e.KeyChar.ToString <> "S" And e.KeyChar.ToString <> "n" And e.KeyChar.ToString <> "N" Then
e.Handled = True
End If
End Sub

*usar aspas duplas no lugar de simples :)
Não esquecer o evento Keypreview no Form deve estar TRUE
KERPLUNK 14/03/2023 21:15:02
#501137
Se o textbox representa "Sim/Não", voce deveria usar um campo boolean. Assim, voce usa um checkbox ao invés de um texto.
DJROBERTOSC 15/03/2023 13:59:12
#501141
Citação:

:
Se o textbox representa "Sim/Não", voce deveria usar um campo boolean. Assim, voce usa um checkbox ao invés de um texto.



Exato.
eu normalmente uso assim:

If txtativo.Checked = True Then
txtativado.Text = "Sim"
Else
txtativado.Text = "Não"
End If
ELMO01 21/03/2023 08:17:37
#501177
Bom dia pessoal

Em primeiro lugar gostaria de agradeçer a atenção de todos pelas respostas, mais tenho uma dúvida, tem como fazer uma função ou sub que verifique se foi digitado no textbox a letra "S" ou "N", pois tenho várias textbox que tenho que verificar se foi digitado as letras, senão tenho que fazer uma Sub ?????_KeyPress para cada textbox que tenho.

Obrigado,
JABA 23/03/2023 13:20:52
#501200
Voce pode usar o controle RadioButton para uso de "Sim" e "Não". De uma olhada e veja se te ajuda:

www.tutorialspoint.com/vb.net/vb.net_radio_button.htm
PROGRAMADORVB6 24/03/2023 07:03:12
#501205
Olá JABA ele quer é uma função , já tive a ver aqui e não tenho nada pronto para ele.
PROGRAMADORVB6 26/03/2023 13:37:49
#501212
Fiz em VISUAL STUDIO 2012

Olá boa tarde fiz aqui uma coisa para Vc
Põe uma caixa de texto e no Form1 cola este codigo
  Public Class Form1
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoLETRAS(KeyAscii))

If KeyAscii = 0 Then

e.Handled = True

End If

End Sub
End Class



Cria um módulo de nome : ValidaTextBox com este código :

  Module ValidaTextBox



Function SoLETRAS(ByVal KeyAscii As Integer) As Integer

"Transformar letras minusculas em Maiúsculas

KeyAscii = Asc(UCase(Chr(KeyAscii)))

" Intercepta um código ASCII recebido e admite somente letras

If InStr("SNsn", Chr(KeyAscii)) = 0 Then

SoLETRAS = 0

Else
MsgBox(Chr(KeyAscii)) " Diz qual a letra pressionada
SoLETRAS = KeyAscii

End If



" teclas adicionais permitidas

If KeyAscii = 8 Then SoLETRAS = KeyAscii " Backspace

If KeyAscii = 13 Then SoLETRAS = KeyAscii " Enter

If KeyAscii = 32 Then SoLETRAS = KeyAscii " Espace

End Function
End Module

Faça seu login para responder