大家早上好。如果.....然後聲明不能正常工作
我有這個很奇怪的問題。
這是我的代碼片段。
Dim apantisi_pou_edwse As String
Dim objreader As New StreamReader(TEST_NAME)
Dim Answer1 As String = Split(objreader.ReadToEnd(), vbCrLf)(1) & vbCrLf
If test1.RadioButton1.Checked = True Then
apantisi_pou_edwse = test1.RadioButton1.Text.ToString()
ElseIf test1.RadioButton2.Checked = True Then
apantisi_pou_edwse = test1.RadioButton2.Text.ToString()
End If
If apantisi_pou_edwse = Answer1 Then
RichTextBox1.BackColor = Color.Green
RichTextBox1.Text = "Right answer!"
ElseIf apantisi_pou_edwse <> Answer1 Then
RichTextBox1.BackColor = Color.Red
RichTextBox1.Text = "Sorry, wrong anwser"
End If
所以這是從文本文件中讀取一行並將其分配給字符串變量Answer1。 然後它接受相應單選按鈕的Text屬性並將其分配給String變量apantisi_pou_edwse。 最後,它檢查是否apantisi_pou_edwse = Aswer1。 問題是,即使兩者相等,if ... then語句也不會識別它們,並且始終移動到elseif部分。 我錯過了什麼? 非常感謝
編輯
If String.Compare(apantisi_pou_edwse, Answer1) = 0 Then
RichTextBox1.BackColor = Color.Green
RichTextBox1.Text = "Συγχαρητήρια απάντησες σωστά"
Else
RichTextBox1.BackColor = Color.Red
RichTextBox1.Text = "Λυπάμαι απάντησες λάθος"
End If
我改變了我的if語句與上面的一個,但它仍然無法正常工作:(
EDIT2 感謝Mortalus和Enigmativity爲他們的答案!他們解決了問題
可能是,由於某種原因,你已經附加了'vbCrLf'對字符串的結尾你已從文件中讀取,但單選按鈕文本不包含該文件。此外,「文本」已經是一個字符串。爲什麼要調用'ToString()'? –
另外,'ElseIf apantisi_pou_edwse <> Answer1然後''可能只是'Else' - 你已經通過'If'建立了兩個值不匹配。 –