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

RichMond

[Vb.NET 2005] Problema com If e Else

6 mensagens neste tópico

olá...

ora bem tou a precisar de ajuda aqui com um codigo...eu na percebo muito disto porque tou a aprender sozinho...e ainda tou na fase das coisas básicas...entao o codigo é o seguinte:

If TextBox1.Text = "hidrogénio" Then

            Form2.Show()
            Me.Hide()
        ElseIf TextBox1.Text = "H" Then

            Form2.Show()
            Me.Hide()

        ElseIf TextBox1.Text = "hélio" Or "He" Then
            Form3.Show()
            Me.Hide()

        ElseIf TextBox1.Text = "Lítio" Or "Li" Then
            form4.show()
            Me.Hide()

o problema é que se meter "hidrogénio" ele vai para a form2 mas se meter "H" ele nao vai...

obrigado...continuação de bom trabalho!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Falta-te um End If no final e aqui tem de ser:

  ElseIf TextBox1.Text = "hélio" Or TextBox1.Text = "He" Then

(bem como na outra, claro)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boa noite

Penso que em vez de utilizares um encadeamento de if’s devias utilizar uma estrutura case.

Embora em termos de lógica os if’s estejam correctos, uma estrutura de um case para um caso destes seria uma programação mais “limpa”.

Mas é apenas um opinião.

Cumprimentos.

Nota: Caso não saibas como fazer com um case diz

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

neste caso aconselhava-te o "SELECT CASE"... isto é muito interessate

tens uma variavel para avaliar e consoante o seu valor executa um bloco de código destinto

o teu exemplo convertido com SELECT CASE

select case textbox1.text

case "hidrogénio","H"
	form2.show()
	Me.Hide()

case "hélio","He"
	form3.show()
	Me.Hide()

case "Lítio","Li"
	form4.show()
	Me.Hide()

end select

neste caso é avaliado o valor de textbox1.text e consoante o seu valor executa o bloco de código associado

em tuguês fica assim

caso textbox1.text = "Helio" faz isto

caso textbox1.text = "Litio" faz aquilo

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigado pela ajuda...usei o case em vez do if e funcionou bem e com codigo mais facil....

edit: já agora gostava de saber como correr aplicaçoes criadas no vb.net 2005 mas sem ter o framework 2....é possivel?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

nop.. o 2005 e com base no framework 2 .. logo nao es capax de correr no framework 1...

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