我正在做一个类项目的棒球程序。我几乎完成了它,但它给了我一个语法错误。我无法弄清楚我做错了什么。我使用两个函数将不同类型的棒球票的值返回到计算它们的按钮。为什么这个功能不能用于我的程序。 (Visual Basic)
下面是 1)用户选择是否购买季票或单比赛门票说明书
2.)用户输入所需的票的数目和座椅基于它们是否选择季节单一类型 - 游戏门票。
3)用户点击计算机票费用按钮,显示
4)用户点击清除表单按钮清除反应最终成本
我只是想不通我做错了什么。我知道我在做这件事很愚蠢。
错误发生在btnCompute子例程内部。 与SingleGameCost()和SeasonalCost语法误差修改()线114和118
Public Class Form1
'Global Variables
Dim intTicketChoice As Integer
Dim seatType As Integer
Dim ticketNum As Integer
Private Sub cboTicketType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboTicketType.SelectedIndexChanged
intTicketChoice = Me.cboTicketType.SelectedIndex
Me.lstSeatType.Items.Clear()
Select Case intTicketChoice
Case 0
SingleGame()
Case 1
Seasonal()
End Select
'Make Items visible
Me.lblCostDisplay.Visible = True
Me.lblSeats.Visible = True
Me.lblTickets.Visible = True
Me.lstSeatType.Visible = True
Me.txtTicketNum.Visible = True
Me.btnClear.Visible = True
Me.btnCompute.Visible = True
Me.txtTicketNum.Focus()
End Sub
Private Sub SingleGame()
'Add List Items
Me.lstSeatType.Items.Add("Box Seats $55")
Me.lstSeatType.Items.Add("Lower Deck Seats $35")
Me.lstSeatType.Items.Add("Upper Deck Seats $25")
Me.lstSeatType.Items.Add("Standing Room Only $15")
If lstSeatType.SelectedItem = "Box Seats $55" Then
seatType = 0
End If
If lstSeatType.SelectedItem = "Lower Deck Seats $35" Then
seatType = 1
End If
If lstSeatType.SelectedItem = "Upper Deck Seats $25" Then
seatType = 2
End If
If lstSeatType.SelectedItem = "Standing Room Only $15" Then
seatType = 3
End If
End Sub
Private Sub Seasonal()
'Add List Items
Me.lstSeatType.Items.Add("Box Seats $2500")
Me.lstSeatType.Items.Add("Lower Deck Seats $1500")
'Price Items for Single Games
If lstSeatType.SelectedItem = "Box Seats $2500" Then
seatType = 4
End If
If lstSeatType.SelectedItem = "Lower Deck Seats $1500" Then
seatType = 5
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub btnCompute_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCompute.Click
intTicketChoice = Me.cboTicketType.SelectedIndex
If intTicketChoice = 0 Then
SingleGameCost()
End If
If intTicketChoice = 1 Then
SeasonalCost()
End If
'try and catch number textbox
Try
ticketNum = Convert.ToInt32(txtTicketNum.Text)
Catch Exception As FormatException
MsgBox("Number of tickets must be numeric")
Return
End Try
'display cost of tickets
Me.lblCostDisplay.Text = "The total cost of tickets purchased: " & totalCost.ToString("C")
End Sub
Private Function SingleGameCost(ByVal seatType As Integer, ByRef ticketNum As Integer, ByRef cost As Decimal) As Decimal
Dim totalCost As Decimal
ticketNum = Convert.ToInt32(Me.txtTicketNum.Text)
'Price Items for Single Games
If seatType = 0 Then
cost = 55D
End If
If seatType = 1 Then
cost = 35D
End If
If seatType = 2 Then
cost = 25D
End If
If seatType = 3 Then
cost = 15D
End If
totalCost = ticketNum * cost
Return totalCost
End Function
Private Function SeasonalCost(ByVal seatType As Integer, ByRef ticketNum As Integer, ByRef cost As Decimal) As Decimal
Dim totalCost As Decimal
ticketNum = Convert.ToInt32(Me.txtTicketNum.Text)
If seatType = 4 Then
cost = 2500D
End If
If seatType = 5 Then
cost = 1500D
End If
totalCost = cost * ticketNum
Return totalCost
End Function
末级
kthe错误发生在这里
If intTicketChoice = 0 Then
SingleGameCost()
End If
If intTicketChoice = 1 Then
SeasonalCost()
End If
与singlegamecost()函数和seasonacost ()函数
错误发生在btnCompute子例程内部。 – 2011-02-24 18:37:24
带有语法错误SingleGameCost()和SeasonalCost() – 2011-02-24 18:37:56
什么行给出语法错误?这本身会有很大的帮助。 – 2011-02-24 18:39:03