2017-10-30 13 views
0

두 개의 목록 상자가 있습니다. ListBox1은 CheckedListBox (LotteryBox)에서 선택된 5 개의 숫자로 채워지고 ListBox2는 1-99 사이의 난수로 채워집니다. 두 ListBoxes의 숫자가 일치하는지 확인하는 방법을 찾고 싶습니다. 예를 들어 하나의 숫자와 일치하는 경우 "한 번호와 일치했습니다"라고 표시됩니다. 등등. 나는 옳은 길을 가고 있다고 생각합니다 :Visual Basic- 목록 상자

Dim Matched As Integer = 0 
    If ListBox2.Contains((LotteryBox.SelectedItem)) Then Matched += 1 
    If ListBox2.Contains((LotteryBox.SelectedItem)) Then Matched += 1 
    If ListBox2.Contains((LotteryBox.SelectedItem)) Then Matched += 1 
    If ListBox2.Contains((LotteryBox.SelectedItem)) Then Matched += 1 
    If ListBox2.Contains((LotteryBox.SelectedItem)) Then Matched += 1 

그러나 LotteryBox에서 선택된 5 개의 숫자를 어떻게 구별합니까?

+1

귀하의 목록 상자가 어떤 숫자를 포함하지 않습니다. 당신이 입력 할 때 나타나는 인텔리전스는'Contains'가 SelectedItem이 아닌 인수로 컨트롤을 취한다는 것을 알려줍니다. MSDN (F1)은이 메서드를 사용하여 * 지정된 컨트롤이 컨트롤의 자식인지 여부를 나타내는 값을 검색합니다. *. 숫자/문자열은 컨트롤이 아니므로 항상 거짓입니다. 데이터가 항목 컬렉션에 있습니다. 그러나 컨트롤보다 데이터로 작업하는 것이 좋습니다. – Plutonix

답변

-1

lotterybox에서 채워지는 listbox1을 반복하여 살펴 봅니다. 이 같은 Somrthing (나는 이것을 테스트 할 개체를 설정하지 않았다.)

For listItem = 0 To Listbox1.ListCount - 1 
    if ListBox2.Contains(listbox1.List(listItem)) Then Matched = Matched + 1 
Next listitem