Button einschalten wenn bestimmte Textboxen ausgefüllt sind

  • VB.NET

Es gibt 23 Antworten in diesem Thema. Der letzte Beitrag () ist von Manny89.

    Na, Dein Ansatz, den Button erst zu aktivieren, wenn alle TBs korrekt ausgefüllt sind, ist doch schon was. Auch die Sache, dass eine MessageBox kommt, wenn Angaben fehlen, ist gut. Prüfe vorher, damit es erst gar nicht zu Fehlern kommen kann. Ein Beispiel für die Aktivierung des Buttons habe ich Dir ja weiter oben gepostet.

    Oder, Du zeigst, was Du im Moment hast und wir guggn mal drüber.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o
    Ich habe verschiedene Sachen im Kopf, die in mein Programm noch müssten, doch leider fehlt mir dazu die Erfahrung.
    Ich gucke mir schon seit Stunden Tutorials an auf Youtube.
    Z.B müsste man noch überprüfen ob in den Textboxen "Deine Email und Email des Empfängers ein @ vor kommt,denn jede Email Adresse enthält ja ein @.
    Und ich noch die Sachen ob alle Texfelder ausgefüllt sind um den Button zu aktivieren.

    Hier nochmal mein Code:

    VB.NET-Quellcode

    1. Imports System.Net.Mail
    2. Public Class Email
    3. Private Sub btnLöschen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLöschen.Click EmailText.Text = "" End Sub
    4. Private Sub btnSenden_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSenden.Click Dim meineMail As New MailMessage Try meineMail.From = New MailAddress(txtDeineMail.Text) meineMail.To.Add(txtEmpfänger.Text) meineMail.Subject = (txtBetreff.Text) meineMail.Body = (EmailText.Text) Dim smtp As New SmtpClient("smtp.web.de") smtp.Port = 587 smtp.EnableSsl = True smtp.Credentials = New System.Net.NetworkCredential(txtDeineMail.Text, txtPasswort.Text) smtp.Send(meineMail) MsgBox("Die Email wurde verschickt") Catch ex As Exception MsgBox("Fehler aufgetreten") End Try End Sub
    5. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Close()
    6. End Sub
    7. Private Sub CheckPass_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckPass.CheckedChanged If CheckPass.Checked = True Then txtPasswort.UseSystemPasswordChar = False End If If CheckPass.Checked = False Then txtPasswort.UseSystemPasswordChar = True End If End Sub
    8. Private Sub txtPasswort_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPasswort.TextChanged txtPasswort.UseSystemPasswordChar = True End Sub
    9. Private Sub btnSenden_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSenden.MouseHover Tip.SetToolTip(btnSenden, "Email senden")
    10. End SubEnd Class
    Du hast Deinen Button senden, hier arbeitest Du alles ab.

    VB.NET-Quellcode

    1. Private Sub btnSend_Click(sender As System.Object, e As System.EventArgs) Handles btnSend.Click
    2. Dim absender As String = Me.txtDeineMail.Text
    3. Dim empfaenger As String = Me.txtEmpfänger.Text
    4. Dim betreff As String = Me.txtBetreff.Text
    5. Dim nachricht As String = Me.txtEmailText.Text
    6. If absender = "" Then
    7. MessageBox.Show("Absender fehlt")
    8. Exit Sub
    9. Else
    10. If Not CheckMailAddress(absender) Then
    11. MessageBox.Show("Absender ungültig")
    12. Exit Sub
    13. End If
    14. End If
    15. If empfaenger = "" Then
    16. MessageBox.Show("Empfänger fehlt")
    17. Exit Sub
    18. Else
    19. If Not CheckMailAddress(empfaenger) Then
    20. MessageBox.Show("Empfänger ungültig")
    21. Exit Sub
    22. End If
    23. End If
    24. If betreff = "" Then
    25. MessageBox.Show("Betreff fehlt")
    26. Exit Sub
    27. End If
    28. If nachricht = "" Then
    29. MessageBox.Show("Nachricht fehlt")
    30. Exit Sub
    31. End If
    32. SendMail(absender, empfaenger, betreff, nachricht)
    33. End Sub
    34. Private Function CheckMailAddress(ByVal address As String) As Boolean
    35. Return address.Contains("@")
    36. End Function
    37. Private Sub SendMail(ByVal absender As String, ByVal empfaenger As String, ByVal betreff As String, ByVal nachricht As String)
    38. 'Sende Deine Mail
    39. End Sub


    Die Funktion zum Senden der Mail wird hier erst aufgerufen, wenn alle angaben korrekt sind. Es ist ein Beispiel und soll Dir nur zeigen, wie man es machen kann. Es gibt bestimmt bessere, kürzere Lösungen. Ich habs extra etwas ausführlicher gemacht, damit Du siehst, wie es im Grunde läuft.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o
    Ich habe es erst mal so gelöst

    VB.NET-Quellcode

    1. If absender = "" Then MsgBox("DU hast deine Emailadresse nicht eingetragen") ElseIf passwort = "" Then MsgBox("Bitte Passwort eingeben") ElseIf betreff = "" Then MsgBox("Bitte trage ein Betreff ein") ElseIf naricht = "" Then MsgBox("Du kannst keine leere Nachricht verschicken") ElseIf zuwem = "" Then MsgBox("Du hast kein Empfänger eingegeben") End If