2016-05-05 12 views
0

$ 200ドルをすでに持っていて、1つのグループボックスに何かをプログラムしようとしています。私は何かを購入するチェックボックスとして3つのオプションがあります。 3つのオプションのうち1つだけを選択してください。すべての項目はVisual Basic 2010 - 複数のチェックボックス計算を設定した価格で

は私がすでにやっていること...異なるコストを持つ: を私は

をコード化している
Dim money As Integer = 200 

Private Sub chkBoots_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBoots.CheckedChanged 
     lblAmountOfMoney.Text = Val(money) - 20 
    End Sub 

Private Sub chkJacket_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkJacket.CheckedChanged 
     lblAmountOfMoney.Text = Val(money) - 40 
    End Sub 

Private Sub chkUmbrella_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkUmbrella.CheckedChanged 
     lblAmountOfMoney.Text = Val(money) - 10 
    End Sub 

    Private Sub rdbCreditCard_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbCreditCard.CheckedChanged 
     lblAmountOfMoney.Text = Val(money) - 20 
    End Sub 

Private Sub rdbDebitCard_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbDebitCard.CheckedChanged 
     lblAmountOfMoney.Text = Val(money) - 20 
    End Sub 

問題は、複数のチェックボックスとラジオボタンが選択されるたびに、それが唯一の割り当てられたコストを減算していることです$ 200から選択されたすべてのチェックボックスとラジオボタンのコストを差し引くのではなく、$ 200の各チェックボックスまたはラジオボタンを使用します(たとえば、ジャケットとブーツを押すと、200ドルから2つではなくその1つだけが減算されます)

大変助かりました。ありがとうございます。

+0

:ここ

は、あなたが望むものと考えられます。あなたがMoneyから引き落としたい場合は、あなたが控除したかのように結果*を表示するのではなく、そうしてください。 Option Strictを有効にする:doubleから整数を減算して文字列に代入する – Plutonix

+0

また、チェックボックスの状態をチェックする必要があります。 CheckChangedイベントは、チェック状態がチェックされていない状態に変更されるたびに発生し、チェックされていない状態がチェックされます。 –

答えて

0

今は、Subsのラベルテキストを更新するだけです。 money変数も更新する必要があります。

価格は、各サブであることを起こるものは何でものために、すべての潜水で

money = money - price 

を追加します。

0

あなたは価格を正しく表示するのにうまくやっていましたが、実際の計算を忘れました。それはあなたがそれをコード化する方法を働いている

Dim money As Integer = 200 

Private Sub chkBoots_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBoots.CheckedChanged 
    lblAmountOfMoney.Text = Val(money) - 20 
    money -= 20 
End Sub 

Private Sub chkJacket_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkJacket.CheckedChanged 
    lblAmountOfMoney.Text = Val(money) - 40 
    money -= 40 
End Sub 

Private Sub chkUmbrella_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkUmbrella.CheckedChanged 
    lblAmountOfMoney.Text = Val(money) - 10 
    money -= 10 
End Sub 

Private Sub rdbCreditCard_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbCreditCard.CheckedChanged 
    lblAmountOfMoney.Text = Val(money) - 20 
    money -= 20 
End Sub 

Private Sub rdbDebitCard_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbDebitCard.CheckedChanged 
    lblAmountOfMoney.Text = Val(money) - 20 
    money -= 20 
End Sub 
関連する問題