2016-01-17 1 views
0

Я делаю табло с использованием меток для оценок, но число не добавляется, оно добавляется только один раз. В чем может быть проблема?VB.NET Продолжайте добавлять значения в метку

Public Class Form2 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Dim a As Integer 
    a = a + 1 

    Label1.Text = a 

End Sub 
End Class 
+0

Переместите 'Dim a As Integer' из подстановки' Button1_Click', иначе вы будете объявлять новый каждый раз, когда вы нажимаете кнопку - вот почему он всегда остается прежним. –

+0

спасибо за информацию и ответ сэр! – Dhan

+0

Можете также изменить его на статику внутри вашего объекта: Static a As Integer – myekem

ответ

0

Переменная a является местной для события button_click. Поэтому каждый раз, когда вы вызываете это событие нажатием на кнопку, переменная выделяется в стеке и имеет начальное значение, установленное по умолчанию для целого числа, которое равно нулю.

Если вы хотите сохранить счетчик, вам нужно объявить переменную на глобальный уровень, где ее объем является множество всех кода в виде

Public Class Form2 
    Dim a As Integer 

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
     a = a + 1  
     Label1.Text = a 
    End Sub 
End Class 

Более подробную информацию о жизни и области видимости переменных можно прочитать в этой статье MSDN: Scope in Visual Basic и Lifetime, Scope, Visibility, and Linkage. Прочтите это внимательно, потому что глубокое понимание этих вопросов имеет основополагающее значение для изучения программирования.

+0

Думаю, он хочет добавлять к нему каждый раз, когда он нажимает кнопку, поэтому вам следует переместить 'a = a + 1' в событие click. –

+0

Да, это была ошибка копирования/вставки, исправлена ​​ – Steve

+0

за информацию. и ответьте ребятам !! – Dhan