Button bei leeren Textboxen deaktiviert

  • VB.NET

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

    Button bei leeren Textboxen deaktiviert

    Ich habe zu Übungszwecken ein Taschenrechner programmiert. Es läuft auch alles perfekt, bis auf eine Sache.
    Ich hätte gerne, wenn die beiden Textboxen leer sind, dass der Button Rechnen deaktiviert ist und wenn in den beiden Textboxen was drin steht, das sich der Button dann wieder aktiviert.

    Hier mal mein Code

    VB.NET-Quellcode

    1. Dim zahl1 = txt1.Text Dim zahl2 = txt2.Text Dim ergebniss
    2. If CheckBox1.Checked Then ergebniss = Val(zahl1) + Val(zahl2) lblErgebniss.Text = "Das Ergebniss ist " & ergebniss CheckBox1.Checked = False txt1.Text = "" txt2.Text = "" If CheckBox1.Checked = False Then End If End If If CheckBox2.Checked Then ergebniss = Val(zahl1) - Val(zahl2) lblErgebniss.Text = "Das Ergebniss ist " & ergebniss CheckBox2.Checked = False txt1.Text = "" txt2.Text = "" End If If CheckBox3.Checked Then ergebniss = Val(zahl1) / Val(zahl2) lblErgebniss.Text = "Das Ergebniss ist " & ergebniss CheckBox3.Checked = False txt1.Text = "" txt2.Text = "" End If If CheckBox4.Checked Then ergebniss = Val(zahl1) * Val(zahl2) lblErgebniss.Text = "Das Ergebniss ist " & ergebniss CheckBox4.Checked = False txt1.Text = "" txt2.Text = "" End If
    3. End Sub
    4. Private Sub CheckBox1_CheckStateChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckStateChanged If CheckBox1.Checked = True Then CheckBox2.Enabled = False CheckBox3.Enabled = False CheckBox4.Enabled = False Else CheckBox2.Enabled = True CheckBox3.Enabled = True CheckBox4.Enabled = True End If End Sub
    5. Private Sub CheckBox2_CheckStateChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox2.CheckStateChanged If CheckBox2.Checked = True Then CheckBox1.Enabled = False CheckBox3.Enabled = False CheckBox4.Enabled = False Else CheckBox1.Enabled = True CheckBox1.Enabled = True CheckBox3.Enabled = True CheckBox4.Enabled = True End If End Sub
    6. Private Sub CheckBox3_CheckStateChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox3.CheckStateChanged If CheckBox3.Checked = True Then CheckBox2.Enabled = False CheckBox1.Enabled = False CheckBox4.Enabled = False Else CheckBox2.Enabled = True CheckBox1.Enabled = True CheckBox4.Enabled = True End If End Sub
    7. Private Sub CheckBox4_CheckStateChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox4.CheckStateChanged If CheckBox4.Checked = True Then CheckBox1.Enabled = False CheckBox2.Enabled = False CheckBox3.Enabled = False Else CheckBox2.Enabled = True CheckBox1.Enabled = True CheckBox4.Enabled = True End If End Sub
    8. Private Sub txt1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt1.Click txt1.Text = "" End Sub
    9. Private Sub txt2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt2.Click txt2.Text = "" End Sub
    10. End Class


    Ich weiß das der Code bestimmt nicht perfekt ist und das man es einfacher machen könnte, aber es ist ja nur zu Übungszwecken.
    Hey,

    die Überprüfung kannst Du so machen:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged
    3. If Me.TextBox1.Text = "" AndAlso Me.TextBox2.Text = "" Then
    4. Me.Button1.Enabled = False
    5. Else
    6. Me.Button1.Enabled = True
    7. End If
    8. End Sub
    9. End Class


    Den Button musst per Default auf Enabled=False setzen.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o