KaZ Posted May 10, 2006 at 02:39 PM Report #26740 Posted May 10, 2006 at 02:39 PM Como posso Fazer para quando o programa está a correr nao deixar o utilizador introduzir letras, mas só o deixar introduzir numeros??? aki vai o meu codigo até agora.... é um prog para fazer um horoscopo... 🙂 alguma ideia nova avisem.... 👍 Private Sub cmdOK_Click() If txtano = "" Then MsgBox "Introduza o ano!!!" txtano.SetFocus End If mes.Visible = False dia.Visible = False ano.Visible = False titulo.Visible = False Label1.Visible = False Label2.Visible = False txtdia.Visible = False txtmes.Visible = False txtano.Visible = False cmdOK.Visible = False If Val(txtdia) >= 21 And Val(txtmes) = 3 Or Val(txtdia) <= 20 And Val(txtmes) = 4 Then lblsigno = "CARNEIRO - Conviva com crianças se tiver oportunidade. Não adie esses momentos até ser tarde demais. As crianças não ficam crianças para sempre." End If If Val(txtdia) >= 21 And Val(txtmes) = 4 Or Val(txtdia) <= 20 And Val(txtmes) = 5 Then lblsigno = "TOURO - As reuniões familiares poderão fazer surgir agradáveis recordações. Você sente-se em harmonia com o seu passado." End If If Val(txtdia) >= 21 And Val(txtmes) = 5 Or Val(txtdia) <= 20 And Val(txtmes) = 6 Then lblsigno = "GEMEOS - Tente resolver alguns problemas em sua casa. Se procurar, vai encontrar várias coisas que precisam de arranjo." End If If Val(txtdia) >= 21 And Val(txtmes) = 6 Or Val(txtdia) <= 22 And Val(txtmes) = 7 Then lblsigno = "CARANGUEIJO - Está cheio/a de ideias para melhorar a sua situação económica. Não rejeite nenhuma delas à partida." End If If Val(txtdia) >= 23 And Val(txtmes) = 7 Or Val(txtdia) <= 22 And Val(txtmes) = 8 Then lblsigno = "LEAO - Cuide mais de si. Às vezes, é preciso colocar as necessidades pessoais no topo das prioridades." End If If Val(txtdia) >= 23 And Val(txtmes) = 8 Or Val(txtdia) <= 22 And Val(txtmes) = 9 Then lblsigno = "VIRGEM - Reserve algum tempo para descansar. Se não recarregar as baterias, vai acabar por não conseguir fazer nada de jeito." End If If Val(txtdia) >= 23 And Val(txtmes) = 9 Or Val(txtdia) <= 22 And Val(txtmes) = 10 Then lblsigno = "BALANÇA - As pessoas à sua volta estão dispostas a ajudá-lo/a a conseguir o que quer. Não recuse essa ajuda." End If If Val(txtdia) >= 23 And Val(txtmes) = 10 Or txtdia <= 21 And txtmes = 11 Then lblsigno = "ESCORPIAO - Escolha o que veste com mais cuidado. As outras pessoas não são indiferentes à sua aparência." End If If txtdia >= 22 And txtmes = 11 Or txtdia <= 21 And txtmes = 12 Then lblsigno = "SAGITARIO - Planeie uma viagem ou inscreva-se num curso. Nunca é tarde para aprender coisas novas." End If If txtdia >= 22 And txtmes = 12 Or txtdia <= 20 And txtmes = 1 Then lblsigno = "CAPRICORNIO - Não hesite em utilizar os recursos de uma pessoa chegada para concretizar um projecto. Mas não se esqueça de retribuir esse apoio no futuro." End If If txtdia >= 21 And txtmes = 1 Or txtdia <= 19 And txtmes = 2 Then lblsigno = "AQUARIO - Você gosta de relações fortes. Uma nova paixão sentimental poderá estar prestes a eclodir na sua vida." End If If txtdia >= 20 And txtmes = 2 Or txtdia <= 20 And txtmes = 3 Then lblsigno = "PEIXES - Uma pessoa chegada vai ajudá-lo/a a organizar a sua vida. O apoio psicológico dessa pessoa será determinante." End If End Sub Private Sub cmdsair_Click() End End Sub Private Sub Command1_Click() Unload Me frmPrincipal.Show End Sub Private Sub txtdia_Change() If txtdia <> "" And (Val(txtdia) > 31 Or Val(txtdia) < 1) Then MsgBox "Introduza um dia válido!!!" 'txtdia = "" txtdia.SetFocus End If End Sub Private Sub txtmes_Change() If txtmes <> "" And (Val(txtmes) > 12 Or Val(txtmes) < 1) Then MsgBox "Introduza um mês válido!!!" 'txtmes = "" txtmes.SetFocus End If End Sub 'Private Sub txtmes_KeyPress(KeyAscii As Integer) ' If Val(KeyAscii) < Asc("0") Or Val(KeyAscii) > Asc("9") Then ' Beep ' End If 'End Sub Private Sub txtmes_KeyUp(KeyCode As Integer, Shift As Integer) If Val(KeyAscii) < Asc("0") Or Val(KeyAscii) > Asc("9") Then Beep End If End Sub por favor ajudem-m o mais rápido possivel..... ?
Ridelight Posted May 10, 2006 at 02:48 PM Report #26741 Posted May 10, 2006 at 02:48 PM Antes demais bem vindo ao Fórum KaZ Tenta evitar utilizar tópicos do género "help me..." ou "ajudem por favor..." Especifica o assunto como por exemplo "Ajuda text-box" Regras do FÓRUM
KaZ Posted May 10, 2006 at 03:01 PM Author Report #26743 Posted May 10, 2006 at 03:01 PM Antes demais bem vindo ao Fórum KaZ Tenta evitar utilizar tópicos do género "help me..." ou "ajudem por favor..." Especifica o assunto como por exemplo "Ajuda text-box" ok a partir de agora ja nao volto a fazer isso... dscp mas sou novo cá.... lllloooolllll mas é k eu tava com pressa... será k nao me podes ajudar?
seesharptec Posted May 10, 2006 at 03:53 PM Report #26748 Posted May 10, 2006 at 03:53 PM Tenta isto Private Sub txtdia_KeyPress(KeyAscii As Integer) If KeyAscii < 49 Or KeyAscii > 57 Then If KeyAscii <>8 Then KeyAscii=0 End If End Sub SeeSharpTec
Ridelight Posted May 10, 2006 at 05:51 PM Report #26766 Posted May 10, 2006 at 05:51 PM Outro reparo Kaz e seesharptec quando postarem código usem a função "GeSHi" para facilitar a leitura. Já editei o post inicial. Thanks to Unknow. Regras do FÓRUM
UnKnowN Posted May 10, 2006 at 05:52 PM Report #26767 Posted May 10, 2006 at 05:52 PM Outro reparo Kaz quando postares código usa a função "GeSHi" para facilitar a leitura. Já editei o post inicial. Thanks to Unknow. Np 👍
freesumo Posted May 11, 2006 at 12:08 AM Report #26816 Posted May 11, 2006 at 12:08 AM Aqui tens um exemplo simples de uma textbox que aceita apenas numeros a tecla back e a tecla enter. Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then Form1.Caption = Time Else If KeyAscii <> vbKeyBack Then If KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then KeyAscii = 0 End If End If End Sub cyas 👍
KaZ Posted May 12, 2006 at 03:36 PM Author Report #27095 Posted May 12, 2006 at 03:36 PM nao dá nd...
vbtipo Posted May 13, 2006 at 08:15 PM Report #27286 Posted May 13, 2006 at 08:15 PM Tens aqui o teu problema resolvido para o vb6. Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End If End Sub Ele apartir deste momento só vai aceitar os números do Zero(0) até ao Nove(9) Lema: Se eu não saber de alguma coisa não se preocupem porque tento sempre ajudar alguma coisita, nem que seja, por palpites/sugestões.
UnKnowN Posted May 14, 2006 at 08:37 AM Report #27331 Posted May 14, 2006 at 08:37 AM Tens aqui o teu problema resolvido para o vb6. Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End If End Sub Ele apartir deste momento só vai aceitar os números do Zero(0) até ao Nove(9) KaZ nao entendas o que vou dizer como "Estou a Chamar-te Burro!", não é nada disso é para no eventual caso de tu ou outros user's nao perceberem vou dizer isto, que poderá até estar mal, corrijam-me se assim for: Ele apartir deste momento só vai aceitar os números do Zero(0) até ao Nove(9) Não é números de 0 a 9, mas sim algarismos (nao te ofendas vbtipo 🙂 ), visto que a TextBox também irá aceitar conjuntos de algarismos, por exemplo 86 é um conjunto de dois algarismos, neste caso o algarismo 8 e o algarismo 6 🙂 Fikem Bem []
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now