VB.Net:选中复选框时显示总计

时间:2015-06-09 05:32:59

标签: vb.net visual-studio checkbox include

我正在为游戏制作一个EXP乘数,所以当我输入金额时,我会勾选某个乘数,它会乘以我的EXP来显示我将获得多少EXP。

如果我选中复选框以便包含该语句,我希望能够知道如何包含语句,否则它不会影响任何内容。

目的: 如果选中系统复选框,我希望我键入的金额(即exp)乘以2。如果选中'hs = checkbox4',则system = checkbox1和总exp将乘以1.5x。如果两者都被选中,则总exp将乘以2x1.5 = 3.否则,它只是2x或1.5x。但我不知道该怎么做。

例如(我不知道如何写它,但它是我想要的点)

    system = exp * 2
    hs = exp * (50 / 100)


    If CheckBox1.CheckState = CheckState.Checked Then
        totalexp INCLUDES multiplier system
    ElseIf CheckBox1.CheckState = CheckState.Unchecked Then
        totalexp is not affected by multiplier system
    End If
    If CheckBox4.CheckState = CheckState.Checked Then
        totalexp INCLUDES multiplier hs
    ElseIf CheckBox4.CheckState = CheckState.Unchecked Then
        totalexp INCLUDES multiplier hs
    End If

    totalexp = hs * system

请帮忙!

1 个答案:

答案 0 :(得分:0)

TextBox1输入提供exp,并为CheckBox1CheckBox4分别设置systemhs两个复选框,一个按钮来处理输入,然后您可以在下面使用此代码。

Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim exp As Double
    If IsNumeric(TextBox1.Text) Then
        exp = CDbl(TextBox1.Text)
    Else
        MsgBox("Please input a number.")
    End If
    If CheckBox1.Checked = True Then
        exp = exp * 2
    End If
    If CheckBox4.Checked = True Then
        exp = exp * 1.5
    End If
    If exp <> 0 Then
        MsgBox(exp)
    End If
End Sub
End Class

如果同时选中了两个复选框,那么您的输入(exp)将乘以2和1.5。

如果未选中任何复选框,则显示消息将为零。如果您希望一旦没有选中复选框就会显示任何消息,那么您可以在最后End If代码后添加此消息

MsgBox(exp)更改为

If exp<> 0 Then
    MsgBox(exp)
End If