COMO FECHAR/DETRUIR UMA TELA?

SOARESMINEIRO 16/11/2015 14:53:42
#453984
Sou novo neste [Ô]ramo[Ô] do visual studio. Estou tentando implementar um código no qual a tela form1 tem que fechar assim que a condição seja ok, só que está dando erro. Segue abaixo o codigo:

If trim(txtLogin.Text) = [Ô][Ô] Or trim(txtSenha.Text) = [Ô][Ô] Then
MsgBox([Ô]Favor digitar o login e/ou senha corretamente![Ô], vbOKOnly)
Else
[txt-color=#e80000]Unload Me[/txt-color]
Form2.Show()
End If


Após uma postagem errada no VB/VBA um colega chamado JABA disse para eu colocar o Unload Me ao contrário, conforme abaixo:

If trim(txtLogin.Text) = [Ô][Ô] Or trim(txtSenha.Text) = [Ô][Ô] Then
MsgBox([Ô]Favor digitar o login e/ou senha corretamente![Ô], vbOKOnly)
Else
Form2.Show()
[txt-color=#e80000]Unload Me[/txt-color]
End If


Coloque e mesmo assim nao deu nada. Segue print anexo que mostra o erro mais claro.
KURTGU 16/11/2015 15:11:10
#453986
form2.close [ô]fecha a tela

form2.visible= false [ô]esconde a tela

application.exit [ô]fecha o sistema todo
DS2T 16/11/2015 15:12:19
#453987
Primeiro:

Troque o:

Unload me


Por:

Me.Close



(Lembrando que se esse for o seu primeiro formulário a ser carregado, nas propriedades do projeto/application a opção Shutdown mode deve estar como: Quando o último form for fechado.)


Segundo:

troque a linha:

if ckb_CheckedChanged() = True


Por:

if ckb.Checked Then



Abraços!
PLUGSOFTSM 16/11/2015 15:18:11
#453988
Resposta escolhida
Para destruir o formulário altere o evento mostrado abaixo

Private Sub Form2_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
Me.Dispose(True)
End Sub

Deixe ele assim que vai destruir o formulário
NICKOSOFT 16/11/2015 20:49:52
#454007
use sempre o dispose pra destruir (exatamente como foi sugerido), antes sempre carregue outro form....
fique atento as propriedades do projeto q por padrão vem configurada pra qnd fechar o form inicial, finalizar o programa....
SOARESMINEIRO 19/11/2015 09:57:51
#454137
Pessoal,
Consegui desta forma abaixo. Não é TRUE e sim FALSE. Testei com TRUE e não deu certo. Segue abaixo:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click

[ô]Se o txtLogin e o txtSenha é igual a nulo, ele mostra uma mensagem. Senão ele mostra a tela iicial e destroi a tela de login

If Trim(txtLogin.Text) = [Ô][Ô] Or Trim(txtSenha.Text) = [Ô][Ô] Then
MsgBox([Ô]Favor digitar o login e/ou senha corretamente![Ô], vbOKOnly, [Ô]Atenção![Ô])
ElseIf Trim(txtLogin.Text) <> [Ô][Ô] And Trim(txtSenha.Text) <> [Ô][Ô] Then
frmInicial.Show()
[txt-color=#e80000]Me.Dispose(False)[/txt-color]
End If
End Sub
Tópico encerrado , respostas não são mais permitidas