我正在研究计算门票销售的视觉基础应用程序(带视觉工作室2010)。这是一个非常具有挑战性,因为我是一个新手,当涉及到视觉基础。棒球票销售(Visual Basic)
我很难得到计算按钮到 以下是从函数中获取成本并使用它们来计算总计的说明。以下是他们给我的指示。
- 用户选择是否购买季票或单比赛门票
- 用户输入所需的票的数目和基于它们是否选择季节单比赛门票座位的类型。
- 用户点击计算机票费用按钮,显示最终成本
- 用户点击清除表单按钮清除响应
我卡上的计算按钮。我只需要能够从按钮捕获成本,然后使用按钮来计算它。
Public Class Form1
'Global Variables
Dim intTicketChoice As Integer
Dim finalCost As Decimal
Dim cost As Decimal
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()
Dim seatType As Integer
'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()
Dim seatType As Integer
'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
Dim ticketNum As Integer
Dim totalCost As Decimal
ticketNum = Convert.ToInt32(Me.txtTicketNum.Text)
intTicketChoice = Me.cboTicketType.SelectedIndex
Select Case intTicketChoice
Case 0 : totalCost = SingleGameCost()
Case 1 : totalCost = SeasonalCost()
End Select
'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, ByVal ticketNum As Integer)
finalCost = ticketNum * cost
'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
Return finalCost
End Function
Private Function SeasonalCost(ByVal seatType As Integer, ByVal ticketNum As Integer, ByRef cost As Decimal)
Dim finalCost As Decimal
If seatType = 4 Then
cost = 2500D
End If
If seatType = 0 Then
cost = 1500D
End If
finalCost = cost * ticketNum
Return finalCost
End Function
End Class
错误发生在这里:
If intTicketChoice = 0 Then
SingleGameCost()
End If
If intTicketChoice = 1 Then
SeasonalCost()
End If
与singlegamecost()
功能和seasonacost()
功能。
它现在做了什么?任何错误? – mellamokb 2011-02-23 04:31:28
我不能准确地看到发生了什么问题?你是否收到错误?你想在哪里提供价值? – 2011-02-23 04:34:36
不应该'finalCost = ticketNum * cost'在'SingleGameCost'的底部,在'Return'语句的正上方? – mellamokb 2011-02-23 04:34:46