Vb.net 棒球票销售
我有一个关于Visual Basic作业的问题。问题是要求用户设计一个Windows应用程序,并编写将根据需求文档执行的代码。这个问题的定价要求如下:季票的包厢座位是2500美元,下层座位是1500美元。单人游戏票的包厢座位是55美元,下层是35美元,上层是25美元,只有站立的空间是15美元。当我的程序运行时,它似乎只使用$55或$2500的值,而其他值并不是实际的选择。其他一切都可以。任何帮助都将不胜感激。这是我的密码:Vb.net 棒球票销售,vb.net,vb.net-2010,Vb.net,Vb.net 2010,我有一个关于Visual Basic作业的问题。问题是要求用户设计一个Windows应用程序,并编写将根据需求文档执行的代码。这个问题的定价要求如下:季票的包厢座位是2500美元,下层座位是1500美元。单人游戏票的包厢座位是55美元,下层是35美元,上层是25美元,只有站立的空间是15美元。当我的程序运行时,它似乎只使用$55或$2500的值,而其他值并不是实际的选择。其他一切都可以。任何帮助都将不胜感激。这是我的密码: ' Program Name: Baseball Tickets
' Program Name: Baseball Tickets Selection
' Author: William Gambill
' Date: November 26, 2012
' Purpose: The Baseball Tickets Selection application determines the
' type of baseball tickets available and calculates the cost
' depending upon the seat chosen and number of seats.
Option Strict On
Public Class frmBaseballTicketSales
' Class Variables
Private _strBoxSeats As String = "Box Seats $55"
Private _strLowerDeck As String = "Lower Deck Seats $35"
Private _strUpperDeck As String = "Upper Deck Seats $25"
Private _strStdRmOnly As String = "Standing Room Only $15"
Private _strSeasnBoxSeats As String = "Box Seats $2500"
Private _strSeasnLowerDeck As String = "Lower Deck Seats $1500"
Private Sub cboTicketSelection_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboTicketSelection.SelectedIndexChanged
' This event handler allows the user to enter the ticket choice
' and then calls subprocedures to place the seat choices in the list.
Dim intTicketChoice As Integer
intTicketChoice = Me.cboTicketSelection.SelectedIndex
lstSeatType.Items.Clear()
Select Case intTicketChoice
Case 0
SingleTickets()
Case 1
SeasonTickets()
End Select
' Make items visible in the window
lblNumberOfTickets.Visible = True
txtNumberOfTickets.Visible = True
lblSeatType.Visible = True
lstSeatType.Visible = True
btnCalculate.Visible = True
btnClear.Visible = True
lblTotalTicketCost.Visible = True
lblFinalTotalCost.Visible = True
' Clear the labels
lblFinalTotalCost.Text = ""
' Set focus on number in tickets text box
txtNumberOfTickets.Clear()
txtNumberOfTickets.Focus()
End Sub
Private Sub SingleTickets()
' This procedure fills in the possible single game tickets
lstSeatType.Items.Add(_strBoxSeats)
lstSeatType.Items.Add(_strLowerDeck)
lstSeatType.Items.Add(_strUpperDeck)
lstSeatType.Items.Add(_strStdRmOnly)
End Sub
Private Sub SeasonTickets()
' This procedure fills in the possible season tickets
lstSeatType.Items.Add(_strSeasnBoxSeats)
lstSeatType.Items.Add(_strSeasnLowerDeck)
End Sub
Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click
' This button event handler determines the cost of baseball tickets
' based on ticket type, seat type, and number of tickets bought.
' It displays the total cost of the tickets.
Dim intNumberOfTickets As Integer
Dim blnNumberOfTicketsIsValid As Boolean = False
Dim blnTypeIsSelected As Boolean = False
Dim intTypeChoice As Integer
Dim intTicketChoice As Integer
Dim decTotalCost As Decimal
' Call a function to ensure the number of tickets is valid
blnNumberOfTicketsIsValid = ValidateNumberOfTickets()
' If number of tickets and the type selection are valid, calculate the cost
If (blnNumberOfTicketsIsValid) Then
intNumberOfTickets = Convert.ToInt32(txtNumberOfTickets.Text)
intTicketChoice = Me.cboTicketSelection.SelectedIndex()
Select Case intTicketChoice
Case 0
decTotalCost = SingleFindCost(intTypeChoice, _
intNumberOfTickets)
Case 1
decTotalCost = SeasonFindCost(intTypeChoice, _
intNumberOfTickets)
End Select
' Display the cost of the tickets
lblFinalTotalCost.Text = decTotalCost.ToString("C")
End If
End Sub
Private Function ValidateNumberOfTickets() As Boolean
' This procedure validates the value entered for the number of tickets
Dim intTicketNumber As Integer
Dim blnValidityCheck As Boolean = False
Dim strNumberOfTicketsErrorMessage As String = _
"Please enter the number of tickets (1-99)"
Dim strMessageBoxTitle As String = "Error"
Try
intTicketNumber = Convert.ToInt32(txtNumberOfTickets.Text)
If intTicketNumber > 0 And intTicketNumber < 100 Then
blnValidityCheck = True
Else
MsgBox(strNumberOfTicketsErrorMessage, , strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
End If
Catch Exception As FormatException
MsgBox(strNumberOfTicketsErrorMessage, , strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
Catch Exception As OverflowException
MsgBox(strNumberOfTicketsErrorMessage, , strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
Catch Exception As SystemException
MsgBox(strNumberOfTicketsErrorMessage, , strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
End Try
Return blnValidityCheck
End Function
Private Function SingleFindCost(ByRef intTypeSelection As Integer, _
ByRef intNumberOfTickets As Integer) As Decimal
' This function calculates the cost of Single Game tickets
Dim decTypeCost As Decimal
Dim decFinalCost As Decimal
Dim decSingleBoxCost As Decimal = 55D
Dim decSingleLowerCost As Decimal = 35D
Dim decSingleUpperCost As Decimal = 25D
Dim decSingleStandCost As Decimal = 15D
Select Case intTypeSelection
Case 0
decTypeCost = decSingleBoxCost
Case 1
decTypeCost = decSingleLowerCost
Case 2
decTypeCost = decSingleUpperCost
Case 3
decTypeCost = decSingleStandCost
End Select
decFinalCost = decTypeCost * intNumberOfTickets
Return decFinalCost
End Function
Private Function SeasonFindCost(ByRef intTypeSelection As Integer, _
ByRef intNumberOfTickets As Integer) As Decimal
' This function calculates the cost of Season Tickets
Dim decTypeCost As Decimal
Dim decFinalCost As Decimal
Dim decSeasonBoxCost As Decimal = 2500D
Dim decSeasonLowerCost As Decimal = 1500D
Select Case intTypeSelection
Case 0
decTypeCost = decSeasonBoxCost
Case 1
decTypeCost = decSeasonLowerCost
End Select
decFinalCost = decTypeCost * intNumberOfTickets
Return decFinalCost
End Function
Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
' This event handler clears the form and resets the form for
' reuse when the user clicks the Clear button.
cboTicketSelection.Text = "Select Ticket Type"
txtNumberOfTickets.Clear()
lstSeatType.Items.Clear()
lblFinalTotalCost.Text = ""
lblNumberOfTickets.Visible = False
txtNumberOfTickets.Visible = False
lblSeatType.Visible = False
lstSeatType.Visible = False
btnCalculate.Visible = False
btnClear.Visible = False
lblTotalTicketCost.Visible = False
lblFinalTotalCost.Visible = False
End Sub
Private Sub frmBaseballTicketSales_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Hold the splash screen for 5 seconds
Threading.Thread.Sleep(5000)
End Sub
End Class
'节目名称:棒球票选择
作者:威廉·甘比尔
日期:2012年11月26日
'目的:棒球票选择应用程序确定
“可用棒球票的类型并计算成本
'取决于选择的座位和座位数量。
选项严格限制在
公共类frmBaseballTicketSales
'类变量
Private _strboxseatsas String=“盒子座位$55”
Private _strlowerdeckas String=“下层座位$35”
私人_strupperdeckas String=“上层座位$25”
Private _strstdrmonlyas String=“仅限站立空间$15”
Private _streasnboxseatsas String=“盒式座位$2500”
Private _streasnlowerdeckas String=“下层座位$1500”
私有子cboTicketSelection\u SelectedIndexChanged(ByVal发送方作为System.Object,ByVal e作为System.EventArgs)处理cboTicketSelection.SelectedIndexChanged
'此事件处理程序允许用户输入票证选择
'然后调用子过程将座位选项放置在列表中。
Dim intTicketChoice作为整数
intTicketChoice=Me.cboTicketSelection.SelectedIndex
lstSeatType.Items.Clear()
选择Case intTicketChoice
案例0
单程票()
案例1
季票
结束选择
'使项目在窗口中可见
lblNumberOfTickets.Visible=True
txtNumberOfTickets.Visible=True
lblSeatType.Visible=True
lstSeatType.Visible=True
btnCalculate.Visible=True
btnClear.Visible=True
lblTotalTicketCost.Visible=True
lblFinalTotalCost.Visible=真
“清除标签
lblFinalTotalCost.Text=“”
'将焦点设置在票证文本框中的数字上
txtNumberOfTickets.Clear()
txtNumberOfTickets.Focus()
端接头
私家小票()
“此程序填写可能的单场比赛门票
lstSeatType.Items.Add(_strBoxSeats)
lstSeatType.Items.Add(_strLowerDeck)
lstSeatType.Items.Add(_strUpperDeck)
lstSeatType.Items.Add(\u strStdRmOnly)
端接头
私人季票()
“这个程序填写了可能的季票
lstSeatType.Items.Add(_strSeasnBoxSeats)
lstSeatType.Items.Add(_strSeasnLowerDeck)
端接头
私有子BTNCalCalculate_Click(ByVal发送者作为System.Object,ByVal e作为System.EventArgs)处理btnCalculate。单击
'此按钮事件处理程序确定棒球票的成本
根据门票类型、座位类型和购票数量。
'它显示车票的总成本。
Dim intNumberOfTickets作为整数
Dim blnNumberOfTicketsIsValid为布尔值=False
Dim blnTypeIsSelected为布尔值=False
Dim intTypeChoice作为整数
Dim intTicketChoice作为整数
以十进制表示的总成本
'调用函数以确保票证数量有效
blnNumberOfTicketsIsValid=validateEnumberoftickets()
'如果票数和类型选择有效,请计算成本
如果(blnnumberoftickets有效),则
intNumberOfTickets=Convert.ToInt32(txtNumberOfTickets.Text)
intTicketChoice=Me.cboTicketSelection.SelectedIndex()
选择Case intTicketChoice
案例0
decTotalCost=SingleFindCost(intTypeChoice_
国际旅行社(车票)
案例1
decTotalCost=季节性FindCost(intTypeChoice_
国际旅行社(车票)
结束选择
“显示车票的价格
lblFinalTotalCost.Text=decTotalCost.ToString(“C”)
如果结束
端接头
私有函数validateEnumberoftickets()作为布尔值
'此过程验证为票证数量输入的值
Dim intTicketNumber为整数
Dim blnValidityCheck为布尔值=假
Dim strNumberOfTicketErrorMessage作为字符串=_
“请输入票数(1-99)”
Dim strMessageBoxTitle为String=“Error”
尝试
intTicketNumber=Convert.ToInt32(txtNumberOfTickets.Text)
如果intTicketNumber>0且intTicketNumber<100,则
blnValidityCheck=True
其他的
MsgBox(strNumberOfTicketsErrorMessage,strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
如果结束
捕获异常作为FormatException
MsgBox(strNumberOfTicketsErrorMessage,strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
捕获异常作为OverflowException
MsgBox(strNumberOfTicketsErrorMessage,strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
将异常捕获为SystemException
MsgBox(strNumberOfTicketsErrorMessage,strMessageBoxTitle)
txtNumberOfTickets.Focus()
txtNumberOfTickets.Clear()
结束尝试
返回blnValidityCheck
端函数
私有函数SingleFindCost(ByRef intTypeSelection为整数_
ByRef intNumberOfTickets(作为整数)作为十进制
'此函数计算单个游戏门票的成本
Dim DECTYPE成本为十进制
Dim decFinalCost为十进制
十进制成本=55D
暗淡的decS