2017-01-31 18 views
0

Так что я генерировать 100 этикетки со следующим:Создание меток и сохранение переменных?

Sub Load_Pieces() 
    For i = 0 To 9 
     For i1 = 0 To 9 
      Pieces(i1, i) = New Label 
      Pieces(i1, i).Text = "" 
      Pieces(i1, i).Location = New Point((i1 * 20) + 13, (i * 20) + 13) 

      Pieces(i1, i).Size = New Size(20, 20) 
      Pieces(i1, i).BorderStyle = BorderStyle.FixedSingle 
      Pieces(i1, i).Font = New Font("Arial", 13) 
      Pieces(i1, i).BackColor = Color.White 
      AddHandler Pieces(i1, i).Click, AddressOf Piece_Clicked 
      Me.Controls.Add(Pieces(i1, i)) 
     Next 
    Next 
End Sub 

Что мне нужно сделать, это для метки провести три или четыре отдельных переменных каждый (все целые числа), и для функции Piece_Clicked, чтобы иметь возможность читать переменные как кликаемой части, так и соседних плит (или любой плитки, если на то пошло).

Пример: Часть 66 нажата, это увеличивает число часть 65 отображения на единицу, и отображает результат на части 67.

Я полагаю, что, среди других переменных, метки должны были бы назначаются идентификационные номера, которые позволят им определить, какие метки смежны. Я также предполагаю, что сами метки не могут хранить переменные, поэтому мне нужно будет использовать массив или словарь, который хранит числа, и щелчок по метке будет обращаться к соответствующим записям в виде массива/словаря?

ответ

0

Я также предполагаю, метки сами по себе не могут фактически хранить переменные

Элемент управления может хранить любую переменную в Tag property.

Я бы рекомендовал использовать пользовательский класс для хранения этих трех переменных и присвоить экземпляр его объекту Tag. Верните его обратно к типу в Piece_Clicked.