Den Text der auf einem Button steht in eine Variable eintragen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Den Text der auf einem Button steht in eine Variable eintragen

    So ich schon wieder, diesem mal mit was eig. ganz kleinem. Ich will den Wert eines Buttons in eine Variable übertragen. Bsp. es steht die Zahl 10 auf dem Button nach dem klick soll sie in der variable stehen.

    Wenn ich es wie in der schule machen will gehts nicht weil strict on mir sagt er lässt es nicht zu. der Code sieht aktuell so aus:

    VB.NET-Quellcode

    1. If aw = MsgBoxResult.Yes Then
    2. score = sender.ToString
    3. Call nächste_gruppe(CStr(gruppe), CInt(score))
    4. Else
    5. Call nächste_gruppe(CStr(gruppe), 0)
    6. End If

    Im call ist der Cose drinnen

    VB.NET-Quellcode

    1. Sub nächste_gruppe(nummer As String, punkte As Integer)
    2. speichern(CInt(nummer), 1) = CStr(CInt(speichern(CInt(nummer), 1)) + punkte)
    3. If gruppe = CDbl(Ersteinstellung.gruppenanz) Then
    4. gruppe = 1
    5. Else
    6. gruppe += 1
    7. End If
    8. End Sub


    Nun zur genauen erklärung, Sobald ich den Button ausführe und yes klicke, bricht er mit bei Scor ab und sagt mir: "Ungültige Konvertierung von der Zeichenfolge System.Windows.Forms.Button, Tex in Typ Integer."
    Dann hab ich gerafft das er deb ganzen Button da mitnimmt, aber ich will ja nur das was auf dem Button ist.
    Kan mir jmd da helfen?

    Gruß LC

    Lord C schrieb:

    strict on mir sagt er lässt es nicht zu.
    Was genau?
    -----
    Das ist jämmerlicher Code. :/
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Du musst den "Sender" erst in einen Button casten.

    VB.NET-Quellcode

    1. Dim btn As Button = DirectCast(sender, Button)

    Dann kannst du bei btn auch auf "Text" zugreifen.

    In der Schule werdet ihr wohl direkt auf den Namen des Buttons zugreifen.
    Also wenn du einen Button mit dem NAMEN Button1 hast, kannst du mit Button1.Text auf den Text des Button1 zugreifen. Als Beispiel.
    Sender ist hier nur allgemeiner. Jeder Button hat einen Sender. Also kannst du einen Code schreiben und mit dem Befehl

    VB.NET-Quellcode

    1. Private Sub Button_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click, Button2.Click
    2. Dim btn As Button = DirectCast(sender, Button)
    3. MessageBox.Show(btn.Text)
    4. End Sub

    auf alle Buttons die du als Handle auflistest zugreifen und musst nicht für jeden Knopf den Befehl einzeln erstellen.

    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Und wie bau ich das am besten oben rein? score= btn oder in den call sub? Daraus werde ich nicht schlau ^^ . Aber was das macht hab ich kapiert(ist jetzt was neues das weiß ich nicht wie ich es richtig einbauen kann)

    Danke, jetzt gehts. Wir lernen es in der Schule ohne Strict On :D Das hast mein Lehrer ich kann ja mal ein Code mitbringen.

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

    Ich verstehe noch nicht so recht wann bei dir

    VB.NET-Quellcode

    1. If aw = MsgBoxResult.Yes Then score = sender.ToString
    2. Call nächste_gruppe(CStr(gruppe), CInt(score))
    3. Else
    4. Call nächste_gruppe(CStr(gruppe), 0)
    5. End If

    aufgerufen wird.
    Bzw. was der Sinn dahinter genau sein soll. Wird das ne Art Taschenrechner?
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    @Erfinder wenn ich alles Posten würde dann würdet ihr mich suchen und steinigen, da ich alles kompliziert mache.

    @Memo der Code wird bei jedem button druck aufgerufen. Sind 25 Buttons.
    Der sinn dahinter, das ganze Projekt wird am ede ein Quizespiel sein, und dadurch speichere ich die werte in dem Array ganz oben. Und daraus wird dann das Scoreboard.