2012-03-02 72 views
0

我有这个家庭工作的问题,我不知道我在做什么错误有很多错误,我不知道如何纠正。这个问题:我如何解决这个程序和Visual Basic中的功能

的AUTOMATIVE服务店提供下列服务(以下所有的服务都分配一个值):

  • 换油
  • 润滑油招聘
  • 散热器冲洗
  • Transmision平齐检查
  • 消声器更换和
  • 轮胎旋转

创建一个显示客户访问总数的应用程序。这是到目前为止我的代码:

Public Class Form1 
    'class level declerations 
    Const decTax_Rate As Decimal = 0.06D ' TaX on Parts only 
    Const decOilChange As Decimal = 26 ' cost of oil change 
    Const decLubeJob As Decimal = 18  ' cost for lube job 
    Const decRadiator As Decimal = 30 ' cost for Raditor Flush 
    Const decTransmission As Decimal = 80 ' cost of transmission work 
    Const decInspection As Decimal = 15 ' cost of inspection 
    Const decReplaceMuffler As Decimal = 100 'cost of replacing muffler 
    Const decRotateTire As Decimal = 20 'cost of rotating tire 

End Class 

Private Sub btnCalculate_Click(....) Handles btnCalculate.Click (Error: Identify expected. I put in the following identifiers(Byval decpart as decimal and so on) but still underline the whole procedure as statement is not valid in a namespace) 
    ' The procedure calculate the service total 
    Dim decPart As Decimal   ' hold charges for parts 
    Dim decServiceLabor As Decimal ' hold charges for labor and other services 
    Dim decTaxCharges As Decimal  ' hold sales tax on parts 
    Dim decTotalCharges As Decimal ' hold total charges 


    decServiceLabor = OilLubeCharges() + FlushCharges() + MiscCharges() + OtherCharges() 
    decPart = part1 
    decTaxCharges = CalcTax(decParts) 
    decTotalCharges = decOtherCharges + decTaxCharges 

    lblServiceString.Text = decServiceLabor.ToString("c") 
    lblParts.Text = decPart.ToString("c") 
    lblPartsTax.Text = decTax_Rate.ToString("c") 
    lblTotalFees.Text = decTotalCharges.ToString("c") 
End Sub 
Private Sub btnClear_Click(...) Handles btnClear.Click 

    ' This procedur clears the controls to default values 
    ClearOilLube() ' Clear the check boxes for oil and Lube jobs 
    ClearFlushes() ' Clear the check boxes for radiation and transmission 
    ClearsMisc() ' Clear the check boxes for inspection muffler and tire 
    ClearOther() ' Clear the text boxes for parts and labor 
    ClearFees()  ' Clear the summary lables 

End Sub 
Private Sub btnExit_Click(...) Handles btnExit.Click 
    ' Close the form. 
    Me.Close() 
End Sub 


Function OilLubeCharges(ByVal decOilChange As Decimal) As Decimal 
    ' This function returns the charges for an oil change and or lube job. 
    Dim decOilLube As Decimal = 0D 
    If chkOilChange.Checked = True Then 
     decOilLube += decOilChange 
    End If 

    If chkLubeJob.Checked = True Then 
     decOilLube += decLubeJob 
    End If 
    Return decOilLube 
End Function 


Function MiscCharges(ByVal decInspection As Decimal) As Decimal 
    'The function returns the total charges for an inspection, muffler replacement and/or a tire rotation 
    Dim decMisc As Decimal = 0D 
    If chkInspection.Checked = True Then 
     decMisc += decInspection 
    End If 

    If chkReplaceMuffler.Checked = True Then 
     decMisc += decReplaceMuffler 
    End If 

    If chkTireRotation.Checked = True Then 
     decMisc += decRotateTire 

    End If 

    Return decMisc 
End Function 


Function FlushCharges(ByVal decRadiator As Decimal) As Decimal 
    'This function return the total charges for a radiator flush and/or a tansmission flush 
    Dim decFlush As Decimal = 0D 
    If chkRadiatorFlush.Checked = True Then 
     decFlush += decRadiator 

    End If 

    If chkTrasmission.Checked = True Then 
     decFlush += decTransmission 

    End If 

    Return decFlush 

End Function 
Function Parts(ByVal decpart As Decimal) As Decimal 
    ' To hold the parts sales 
    Dim decPart1 As Decimal 
    decPart1 += decpart 

    Return decPart1 


End Function 
Function CalcTax(ByVal decpart As Decimal) As Decimal 
    ' This Function receives the sales part and returns the sale part tax. 
    Return decpart * decTax_Rate 
End Function 

Sub ResetOil() 
    ' This procedure resets the oil and lube job. 
    chkOilChange.Checked = False 
    chkLubeJob.Checked = False 
End Sub 
Sub ResetMisc() 
    ' This procedure resets the misc 
    chkInspection.Checked = False 
    chkReplaceMuffler.Checked = False 
    chkTireRotate.Checked = False 
End Sub 
Sub ResetFlushFluids() 
    ' This procedure resets the flush 
    chkRadiatorFlush.Checked = False 
    chkTrasmission.Checked = False 
End Sub 
Sub ResetPrice() 
    ' This procedure resets the price 
    lblServiceString.Text = String.Empty 
    lblParts.Text = String.Empty 
    lblPartsTax.Text = String.Empty 
    lblTotalFees.Text = String.Empty 

End Sub 

其实函数的所有第一线被强调为无效的命名空间声明,所有的程序都需要标识符我把在确定后还是一样。班级表格中没有任何错误。

有什么建议吗?

+5

欢迎来到StackOverflow。输入单词“error”之后你应该做的第一件事就是开始输入你得到的** exact **错误,包括任何错误信息。你期望人们猜测什么不起作用以及错误可能是什么。我们非常乐意帮助您为您的家庭作业问题找到解决方案,但我们不会为您做到这一点。请修改您的问题,以表明您所得到的确切错误,以及它们是否与特定代码相关(表示注释)哪些行导致错误。它会帮助你更快得到答案。谢谢。 :) – 2012-03-02 20:51:10

+2

我们不会只为你做功课。询问关于您的某个错误的具体问题,您将更有可能得到答案。从外观上看,这可能会让你问几个问题。 – N0Alias 2012-03-02 20:54:28

回答

0

对于初学者,您需要确保您的Button活动和Functions属于Form1课程的一部分。

Public Class Form1 

    Private Sub btnCalculate_Click(sender As System.Object, e As System.EventArgs) Handles btnCalculate.Click 

    End Sub 

    Private Sub btnClear_Click(sender As System.Object, e As System.EventArgs) Handles btnClear.Click 

    End Sub 
End Class 
+0

感谢您的建议,它以某种方式工作,但它现在说:“处理子句需要在btnCalculate按钮上包含在包含类型或其基本类型中定义的一个withEvent变量”。我如何编写WithEvent类型。 – user1239164 2012-03-03 00:48:30

+0

@ user1239164您是否在编程创建按钮?然后你的定义应该是这样的'Dim WithEvents btnCalculate As New Button' – 2012-03-03 01:21:32

+0

@ user1239164我也假设你只有一个Form1形式,并且你的按钮在这个Form上。 – 2012-03-03 01:28:01