Я создаю игру в крестики-нолики, и у меня возникли некоторые проблемы, когда я пытался выбрать переключатель, который указывает переменная. Вот мой код:

'Level Selection Enum
Public Enum GameDifficulty

    optEasy = 0
    optMedium = 1
    optHard = 2
    optTest = 3
End Enum

'Default Level
Public SelectedGameDifficulty As GameDifficulty = GameDifficulty.optTest

Что я пытаюсь сделать, так это выбрать переключатель, который указывает переменная SelectedGameDifficulty, но я не знаю, как это сделать. Радиокнопки расположены на форме, а названия радиокнопок - optEasy, optMedium, optHard и optTest. Кто-нибудь может мне помочь?

0
Deemeehaa 29 Июн 2013 в 17:43
WinForms, WPF, ASP.NET или что еще?
 – 
Steve
29 Июн 2013 в 17:58
WinForms. Это действительно простая игра в крестики-нолики.
 – 
Deemeehaa
29 Июн 2013 в 18:03

1 ответ

Лучший ответ

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

Dim controls() as RadioButton = {optEasy, optMedium, optHard, optTest}
controls(CType(SelectedGameDifficulty, Integer)).Checked = True

Конечно, эта схема работает, потому что RadioButtons добавляются внутри массива таким образом, что они имеют порядок, соответствующий целочисленному значению связанного Enum.

1
Steve 29 Июн 2013 в 18:12
Спасибо. Это помогло решить мою проблему.
 – 
Deemeehaa
30 Июн 2013 в 16:39