我正在为游戏制作一个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
请帮忙!
答案 0 :(得分:0)
为TextBox1
输入提供exp
,并为CheckBox1
和CheckBox4
分别设置system
和hs
两个复选框,一个按钮来处理输入,然后您可以在下面使用此代码。
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