Я относительно неопытен в программировании, но уже несколько лет воспринимаю его как предмет.В этом году мой последний год в школе, а это значит, что я должен выполнить большую работу.Я выбрал игру Mastermind на VB.net, но столкнулся с проблемой, которую не научился исправлять.В основной игре мне нужно переключаться между цветами, нажимая четыре кнопки каждый раз, когда человек угадает.Я хочу повторно использовать код, потому что он не маленький, но я не знаю, как сделать это с несколькими кнопками, а точнее с несколькими формами.В данный момент подпрограмма находится в модуле с намерением, чтобы к нему можно было получить доступ, когда второй игрок выбирает код перед началом игры.Это код, который я использую для циклического перебора каждого цвета.Есть еще три, как это, чтобы сформировать четыре необходимые кнопки:
CodeSelect1()
BackColourRed1 = True
BackColourOrange1 = False
BackColourYellow1 = False
BackColourGreen1 = False
BackColourBlue1 = False
BackColourPurple1 = False
If BackColourRed1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Orange
BackColourRed1 = False
BackColourOrange1 = True
ElseIf BackColourOrange1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Yellow
BackColourOrange1 = False
BackColourYellow1 = True
ElseIf BackColourYellow1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Green
BackColourYellow1 = False
BackColourGreen1 = True
ElseIf BackColourGreen1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Blue
BackColourGreen1 = False
BackColourBlue1 = True
ElseIf BackColourBlue1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Purple
BackColourBlue1 = False
BackColourPurple1 = True
ElseIf BackColourPurple1 = True Then
frm2PlayerChooseCode.btnCode1.BackgroundImage = My.Resources.Red
BackColourPurple1 = False
BackColourRed1 = True
End If
End Sub
Я рассмотрел потенциальное решение, которое я приведу ниже, но, насколько я могу понять, оно работает только для кода наодна форма.Я попытался сделать переменные общедоступными, но это дало мне ошибку.Я чувствую, как будто я щекочу край того, что мне нужно сделать, но я просто не могу понять:
Public Sub CodeSelect1(sender As Object, e As EventArgs) _
Handles frmEasy.btnCode1.Click, frmEasy.btnCode5.Click, btnCode9.Click, btnCode13.Click, btnCode17.Click, btnCode21.Click, btnCode25.Click, btnCode29.Click, btnCode33.Click, btnCode37.Click
Dim myButton = DirectCast(sender, Button)
В целом, как мне адаптировать этот код (или использовать другой кодполностью), чтобы использовать в нескольких формах?Вся помощь приветствуется, и спасибо