VB.NET programmieren. Counter beim drücken eines Buttons?

5 Antworten

Von einem Experten bestätigt

Schau dir an, was es bedeutet, eine Variable zu deklarieren und wo man sie deklarieren kann. Und schau dir an, was ein Scope ist.

Du hast die counter-Variable in der Methode deklariert, sie wird also jedes mal neu "erschaffen". Jedes mal bekommt sie erneut den Wert 0 und 0 + 1 = 1.

Du musst die Variable in der Klasse deklarieren, dann behält sie ihren letzten Wert, solange wie die Instanz der Klasse lebt.

Abgesehen davon:

VB.NET ist tot, Microsoft hat es abgekündigt.
Es wird nicht mehr weiter entwickelt und vielleicht auch mit einer der nächsten VisualStudio-Version nicht mehr unterstützt.
Es KANN sogar sein, dass es mit zukünftigen Runtime-Versionen nicht mehr funktioniert, das halte ich aber für unwahrscheinlich.

Naja weil du den in der Funktion counter immer wieder auf 0 setzt. Du musst sie irgendwo anders deklarieren.

Du drückst auf den Button

Er setzt die Variable counter = 0

Du addierst 1 zu 0

Ergebnis ist 1

Und so sollte es funktionieren

Variable counter auf 0 setzen

Button drücken

1 zu counter addieren


JudeFage  09.03.2021, 20:17

Haste auch mal die Antwort hinbekommen nach 10 min nach dem 4 vorher schon was geschrieben haben nh

0
RastaKopf  09.03.2021, 20:21
@JudeFage

Ohje.

1. Zählen lernen

2. Mühe sparen, denn mich juckt nicht wenn du deine Tage hast 🤭

1

Er wird immer mit 0 initialisiert in counter()

counter muss global sein.

Du schreibst im Sub das der counter 0 sein soll

Und dann verwendest du ihn so wieder.

Schreib das ausserhalb und dann sollte es gehen

Beispiel

  Private Sub btn_startGame_Click(sender As Object, e As EventArgs) Handles btn_startGame.Click

        counter()

    End Sub

        Dim counter As Integer = 0

    Public Sub counter()

        counter = counter + 1

        Label1.Text = counter

    End Sub


1Rainii 
Fragesteller
 09.03.2021, 20:21

Danke sehr!

1

Du erschaffst die Variable immer wieder neu.

Woher ich das weiß:Hobby – Ich interessiere mich für das programmieren und Informatik