Как вызвать функцию public из другой функции? Это синтаксическая ошибка в моем проекте VB rock paper scissors. (Я назвал государственные функции из других государственных функций в VBA, но это, по-видимому, отличается в VB.)VB вызов публичной функции от другой функции
Public Class Form1
Public playerchoice, strexplanation, strwinner, computerchoice
Public Sub computerchoice()
Dim randomgenerator As New Random
Dim intcomputerchoice As Integer = randomgenerator.Next(1, 4) ' number from 1-3
If intcomputerchoice = 1 Then intcomputerchoice = "rock"
Else if intcomputerchoice = 2 Then intcomputerchoice = "paper"
ElseIf intcomputerchoice=3 Then intcomputerchoice="scissors"
End If
End Sub
Public Sub winner()
If playerchoice = rock Then
If computerchoice = rock Then
strexplanation = "Tie"
ElseIf computerchoice = paper Then
strexplanation = "Computer wins. Paper covers rock."
ElseIf computerchoice = scissors Then
strexplanation = "Player wins. Rock crushes scissors."
End If
End If
If playerchoice = paper Then
If computerchoice = paper Then
strexplanation = "Tie"
ElseIf computerchoice = scissors Then
strexplanation = "Computer wins. Paper cuts scissors."
ElseIf computerchoice = rock Then
strexplanation = "Player wins. Paper covers rock."
End If
End If
If playerchoice = scissors Then
If computerchoice = scissors Then
strexplanation = "Tie"
ElseIf computerchoice = rock Then
strexplanation = "Computer wins. Rock crushes paper."
ElseIf computerchoice = paper Then
strexplanation="Player wins. Scissors cut paper."S
End If
End If
End Sub
Private Sub exitButton_Click(sender As Object, e As EventArgs) Handles exitButton.Click
Me.Close()
End Sub
Public Sub rock_Click(sender As Object, e As EventArgs) Handles rock.Click
Call Function computerchoice
playerChoice = rock
Call Function winner
End Sub
Public Sub paper_Click(sender As Object, e As EventArgs) Handles paper.Click
Call function computerchoice()
playerChoice = paper
Call Function winner
End Sub
Public Sub scissors_Click(sender As Object, e As EventArgs) Handles scissors.Click
Call Function computerchoice
playerChoice = scissors
Call Function winner
End Sub
End Class
Troublesome часть кода:
Public Sub rock_Click(sender As Object, e As EventArgs) Handles rock.Click
Call Function computerchoice
playerChoice = rock
Call Function winner
End Sub
я получаю синие линии вокруг «Вызов функции «строки в VS Express 2012, указывающие на ошибку.
удалить слова «вызова функции» , просто используйте computerchoice() или winner() – Jeremy
Я также использовал gogled термин «функция вызова vb», и эта удобная статья появляется. https://msdn.microsoft.com/en-us/library/sxz296wz.aspx – Jeremy
Кстати, технически «Sub» - это метод, а не функция. Вы вызываете методы из других методов. – Alexander