• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

KaZ

[vb 6.0] Ajuda text-box[Resolvido]

11 mensagens neste tópico

  :wallbash: 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.... :thumbsup:

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.....    :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 []

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora