Aus irgendeinem Grund funktioniert die erste "If" -Anweisung, wenn ich debugge, aber wenn ich einen anderen Optionsfeld versuche oder die gleiche Schaltfläche verwende, aber versuche das zweite "If" Statement true, ich klicke auf den Button "Reward Points berechnen", es wird aber nicht berechnet. Es berechnet nur die erste "If" -Anweisung. Hier ist mein Code. Ich entschuldige mich, wenn mein Jargon nicht stimmt. Ich nehme nur diese Klasse, weil es erforderlich ist. Ich AttacheVerwenden von Optionsfeldern in Microsoft Visual Studio 2012 - Codierungsfehler
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Const basic1 As Double = 0.03
Const basic2 As Double = 0.05
Const basic3 As Double = 0.08
Const basic4 As Double = 0.1
Const basic5 As Double = 0.15
Dim totalLabel As Double
Dim doubleReward As Double
Double.TryParse(RewardDisplay.Text, doubleReward)
Double.TryParse(TotalTextBox.Text, totalLabel)
If basicRadioButton.Checked AndAlso totalLabel < 100 Then
RewardDisplay.Text = totalLabel * basic1
ElseIf basicRadioButton.Checked AndAlso totalLabel < 200 or >= 100 Then
RewardDisplay.Text = totalLabel * basic2
ElseIf basicRadioButton.Checked AndAlso totalLabel >= 200 Then
RewardDisplay.Text = totalLabel * basic3
ElseIf standardRadioButton.Checked AndAlso totalLabel < 199 Then
RewardDisplay.Text = totalLabel * basic3
ElseIf standardRadioButton.Checked AndAlso totalLabel >= 200 Then
RewardDisplay.Text = totalLabel * basic4
ElseIf premiumRadioButton.Checked AndAlso totalLabel < 299 Then
RewardDisplay.Text = totalLabel * basic4
ElseIf premiumRadioButton.Checked AndAlso totalLabel >= 300 Then
RewardDisplay.Text = totalLabel * basic5
End If
End Sub
Ich habe versucht, es unter die Vereinfachung zu trennen berechnet "If" Aussagen und es nach wie vor nur die erste "If" Aussage Wenn basicRadioButton.Checked AndAlso totalLabel <100 Dann RewardDisplay.Text = totalLabel * basic1 End If Wenn basicRadioButton.Checked AndAlso totalLabel < 200 or > = 100 Dann RewardDisplay.Text = totalLabel * basic2 End If Wenn basicRadioButton.Checked AndAlso totalLabel> = 200 Dann RewardDisplay.Text = totalLabel * Basic3 – AFiddelke
Aber was die Werte der basicRadioButton sind. Überprüft und tot alLabel vor dem If? Sie können einen Haltepunkt vor dem If sehen und die Maus in die Variablen setzen, um die Werte zu sehen. Wenn die Werte falsch sind, liegt das Problem vor den IFs – ruirodrigues1971