Wie kriegt man das in Visual Basic hin? brauche dringend hilfe..

...komplette Frage anzeigen

2 Antworten

Es gibt VB6 (und niedriger) und Vb.Net (VB7 und höher), die miteinander lediglich das VB gemeinsam haben.

Du erstellst einfach eine Klassenvariable vom Typ Integer (z.B: Private myValue As Integer), der die Zahl beinhaltet, also zunächst 10. Beim Klick auf einen Button vermindest du diese Zahl und weist dem Label diese Zahl als Text zu. In der Sub New Methode des Formulares siehst das in etwa so aus:

myValue = 10
Label1.Text = myValue.ToString

Im Button_Click sieht das in etwa so aus:

myValue = myValue - 1
Label1.Text = myValue.ToString
Albanerking 26.03.2012, 17:17

Also ich habe das ausprobiert, aber wenn man auf den button klickt, dann zeigt es 9 versuche an, ist ja ok , aber wenn ich wieder auf den button klicke dann zeigt das programm komischerweise nich 8 versuche an sondern lediglich 9. Was meinen Sie habe ich falsch, ich hab es genauso wie sie.

0
CrystalixXx 26.03.2012, 22:17
@Albanerking

Vermutlich hast du die Variable an falsche Stelle definiert. Die musst du auf Klassenebene erstellen, nicht in den Methoden selbst.

Public Class Form1

  Private myValue As Integer

  Public Sub New()
    InitializeComponent()

    myValue = 10
    Label1.Text = myValue.ToString
  End Sub

  Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    myValue = myValue - 1
    Label1.Text = myValue.ToString
  End Sub

End Class
0
Albanerking 26.03.2012, 17:59

aber trotzdem DANKE!

0

Kann ich dir sagen!

Du musst mir nur noch sagen ob du Visual Basic 6 oder visual Basic 2010 hast?

Albanerking 24.03.2012, 11:26

2008! aber der quellcode bei jedem visual basic ist doch gleich

0
Tom1324 24.03.2012, 11:32
@Albanerking

Du machst einen doppelklick auf den Button. und schreibst dann folgendes hinein:

        If Val(Label1.Text) = 1 Then
        Else
            Label1.Text = Val(Label1.Text) - 1
        End If

In diesem Beispiel stoppt es bei 1

Falls es nicht funktioniert, ersetze überall Label1.text mit Label1.caption

0
CrystalixXx 24.03.2012, 12:09
@Tom1324

Genau so sollte man nicht programmieren. Vorallem nicht in .Net, was es ja offensichtlich ist.

Val ist eine Methode aus VB6-Zeiten. Das ist in .Net obsolete, auch wenn die Methode nicht als obsolete markiert wurde. Daten gehören auch nicht in die Steuerelemente abgelegt. Zwischen den verschiedenen Datentypen wird genauso wenig unterschieden ... Du weist einer Eigenschaft (.Text) vom Typ String einen Integer zu. Für ernsthafte Programmierung ist das fehleranfällig, vorallem wenn man sich einen solchen Programmierstil angeeignet hat.

0

Was möchtest Du wissen?