2017-03-28 16 views
-1

2つのチェックボックスがあります。私が最初にcb1をチェックし、次にcb2をチェックすると、チェックボックスのデータがチェックボックスの順に表示されます。チェックボックスの順序を並べ替える方法

Public Class Form1 

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    If cb1.Checked = True And cb2.Checked = False Then 
     ListBox1.Items.Add(cb1.Text) 
     If cb1.Checked = True And cb2.Checked = True Then 
     ListBox1.Items.Add(cb1.Text) 
     End If 
    ElseIf cb2.Checked = True And cb1.Checked = False Then 
     ListBox1.Items.Add(cb2.Text) 
     If cb2.Checked = True And cb1.Checked = True Then 
     ListBox1.Items.Add(cb1.Text) 
     End If 
    End If 
    End Sub 
End Class 

チェックボックスを1つだけオンにするとデータが表示されますが、両方のチェックボックスがオンの場合はリストボックスにデータが表示されません。

Enter image description here

+2

'' vb.netコードが必要 "" - あなたはまだコードを書いていませんか?全く?あなたの問題を解決するためにあなたはどのような試みをしましたか?あなたのコードは、あなたが期待していることを何とかしていません。そのコードとは何ですか?問題はどこで発生しますか?私たちは*あなたを助けることができます*、しかし私たちは*あなたのためにあなたの仕事を*しません。 – David

+0

私はcb1.checked = trueならば使用し、cb2.checked = falseならlistbox.items.add(cb1.text) –

+0

あなたの質問を編集し、そこにコードを表示し、出力を表示し、次に何が期待されているのか、何を得ているのかを教えてください。 – Sniper

答えて

0

あなたしている質問は、私はあなたが正確に何をしたいの確認するために十分明確ではないが、ここで私は解釈の問題を解決する:両方に該当したかどうかをチェックするための

あなたのコード両方が真であれば実行されないif文の中に入れ子になっていました。 また、来るべき基準があれば、elseifの終わりに終わりを置いてはいけません。

固定コード:

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs)   Handles Button1.Click 
    If cb1.Checked = True AND cb2.Checked = False Then 
     ListBox1.Items.Add(cb1.Text) 
    ElseIf cb1.Checked = True AND cb2.Checked = True Then 
     ListBox1.Items.Add(cb1.Text) 
     ListBox1.Items.Add(cb2.Text) 
    End if 

    If cb2.Checked = True And cb1.Checked = False Then 
     ListBox1.Items.Add(cb2.Text) 
    ElseIf cb2.Checked = True And cb1.Checked = True Then 
     ListBox1.Items.Add(cb2.Text) 
     ListBox1.Items.Add(cb1.Text) 
    End If 

End Sub 

あなたが各1がチェックされた後にイベントが自動的に実現させた場合は、おそらくより良い運を持っているでしょう。このコードは1回だけ実行されるので、チェックされたコードが1つしかなく、コードが実行されていても、他のコードがチェックされていても、何らかのループでコードが実行されない限り、 。

関連する問題