Unteschiedliche wirkungen?

  • VB.NET

Es gibt 25 Antworten in diesem Thema. Der letzte Beitrag () ist von Black-Hat.

    Unteschiedliche wirkungen?

    Guten Tag,
    wenn ich das erste mal auf einen Button klicke soll etwas passieren das zweite mal soll etwas anderes passieren. Wie mache ich das ich keinen Schimmer.

    Danke schon mal

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Erstell dir eine Boolean Variable
    Dann beim Klick änderst du den Status von True auf False. Das dann bei jedem Klick.

    VB.NET-Quellcode

    1. Dim JaNein As Boolean = True
    2. Buttton1.Click........
    3. JaNein = Not JaNein
    4. dein Code
    5. End Sub

    Somit wird bei jedem Cklick von True auf False gesetzt und natürlich wieder umgekehrt
    Vielleicht so?

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim click As Integer = 1
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. If click = 1 Then
    5. 'anweisung 1
    6. click += 1
    7. ElseIf click = 2 Then
    8. 'anweisung 2
    9. click = 1
    10. 'Wiederbeginn
    11. End If
    12. End Sub
    13. End Class

    ChaosBernd schrieb:

    Visual Basic Quellcode

    Dim JaNein As Boolean = True
    Buttton1.Click........
    JaNein = Not JaNein
    dein Code
    End Sub
    So gehts am einfachsten. Oder halt per If Abfrage wie es UFO schon geposted hatte.
    My-Image-Upload.de | Dein kostenloser unlimitierter Bilderhoster


    Bitte lesen bevor ihr unnötige Sachen posted: [VB 2008] wie log ich in diese seite ein? ... DANKE!
    MAch mal eine Form1 und einen Button1
    dann kopier das hier rein.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim MeinBoolean As Boolean = True
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. MeinBoolean = Not MeinBoolean
    5. If MeinBoolean = True Then
    6. Button1.BackColor = Color.Red
    7. Else
    8. Button1.BackColor = Color.Green
    9. End If
    10. End Sub
    11. End Class

    Klick dran rum und dann wirst du verstehen

    ChaosBernd schrieb:

    MAch mal eine Form1 und einen Button1
    dann kopier das hier rein.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim MeinBoolean As Boolean = True
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. MeinBoolean = Not MeinBoolean
    5. If MeinBoolean = True Then
    6. Button1.BackColor = Color.Red
    7. Else
    8. Button1.BackColor = Color.Green
    9. End If
    10. End Sub
    11. End Class

    Klick dran rum und dann wirst du verstehen

    Zu Deutsch:

    Wenn du auf den Button klickst, dann wechselt "MeinBoolean" von True auf False und umgekehrt.
    Wenn "MeinBoolean" wahr (True) ist, dann ist die Hintergrundfarbe des Buttons rot (Red).
    Wenn "MeinBoolean" falsch (False) ist, dann ist die Hintergrundfarbe des Buttons grün (Green).
    My-Image-Upload.de | Dein kostenloser unlimitierter Bilderhoster


    Bitte lesen bevor ihr unnötige Sachen posted: [VB 2008] wie log ich in diese seite ein? ... DANKE!
    War ein kleiner Denkfehler drin.
    Jetzt aber korrekt.

    VB.NET-Quellcode

    1. Public Class Form1
    2. ' Form Load
    3. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    4. My.Settings.Reload()
    5. SetButton()
    6. End Sub
    7. ' Button 1 Klick
    8. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    9. My.Settings.MeinBoolean = Not My.Settings.MeinBoolean
    10. SetButton()
    11. End Sub
    12. ' Sub Set Button
    13. Private Sub SetButton()
    14. If My.Settings.MeinBoolean = True Then
    15. Button1.BackColor = Color.Red
    16. Else
    17. Button1.BackColor = Color.Green
    18. End If
    19. End Sub
    20. ' Application Beenden
    21. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    22. Application.Exit() ' Ohne den hier wird die My.Settings nicht gespeichert
    23. End Sub
    24. End Class

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ChaosBernd“ ()

    Button 2 verschiedene wirkungen?

    Guten Tag,
    ich bins nochmal :D Also mein Code sieht jetzt so aus :

    VB.NET-Quellcode

    1. Private Sub HideAnweisungToolStripMenuItem_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HideAnweisungToolStripMenuItem.Click
    2. My.Settings.Reload()
    3. MeinBoolean = Not MeinBoolean
    4. If MeinBoolean = True Then
    5. Label1.Hide()
    6. HideAnweisungToolStripMenuItem.Text = "Show Anweisung!"
    7. Else
    8. Label1.Show()
    9. HideAnweisungToolStripMenuItem.Text = "Hide Anweisung!"
    10. End If
    11. End Sub


    Aber ich muss das erste mal einen Doppelklick auf das ToolStrip Item machen. Damit was passiert und ich habe auch schon einen verbesserten Code bekommen. Aber der hat so nicht funktioniert mit einem "Button". Kann mir jmd helfen?

    Danke schon mal

    *edith: sry dachte ich soll neuen thread aufmachen das es übersichtlicher wird*

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Black-Hat“ ()

    Das ist doch nur ein Button.
    Deshalb habe ich das doch in eine Sub ausgelagert.
    Nun musst du nur bestimmen wann du die Sub brauchst.

    VB.NET-Quellcode

    1. My.Settings.MeinBoolean = Not My.Settings.MeinBoolean
    2. SetButton()


    Bei Form Load wird nur die Variable aus den Settings gelesen und an die Varaible weitergegeben.
    Bei Button 1 Klick wir der Status geändert und dann über SetButton() die Farbe verändert.

    ansonsten erklär nochmal für dummis.

    danke dir
    bernd
    Durch irgendeinen Zufall klappt jetzt alles! Ich hab stat My.Settings.MeinBoolean ... Nur Mein Boolean geschrieben mit dem Set Button und jetzt geht's. Eine Erklärung hätte ich schon ncoh gerne da ich das nicht richtig verstanden habe.

    Danke an alle beteiligten

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Black-Hat“ ()

    Hier ist er :

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim MeinBoolean As Boolean = True
    3. Private Sub HideAnweisungToolStripMenuItem_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HideAnweisungToolStripMenuItem.Click
    4. MeinBoolean = Not MeinBoolean
    5. SetButton()
    6. End Sub
    7. Private Sub SetButton()
    8. If MeinBoolean = True Then
    9. Label1.Visible = True
    10. HideAnweisungToolStripMenuItem.Text = "Hide Anweisung!"
    11. Else
    12. Label1.Visible = False
    13. HideAnweisungToolStripMenuItem.Text = "Show Anweisung!"
    14. End If
    15. End Sub
    16. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    17. My.Settings.Reload()
    18. SetButton()
    19. End Sub
    20. End Class
    So und das geht. Warum?? Was passiert da?

    Danke