02-01-25, 03:25 AM
(آخر تعديل لهذه المشاركة : 02-01-25, 03:27 AM {2} بواسطة fireswored1.)
شكرا للجميع لقد قمت بحل المشكلة بالستفادة من جميع اكوادكم قمت التعديل واتت النتيجة المجرجوة سارفق الكود لاستفادة الجميع
كود :
Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Data.mdb;"
Dim query As String = "SELECT question,Answer1,Answer2,Answer3,Answer4,CorrectAnswer FROM Questions"
Dim answer1 As String = ""
Dim answer2 As String = ""
Dim answer3 As String = ""
Dim answer4 As String = ""
Dim CorrectAnswer As String = ""
Using connection As New OleDbConnection(connectionString)
Dim command As New OleDbCommand(query, connection)
connection.Open()
Dim reader As OleDbDataReader = command.ExecuteReader()
Dim values As New List(Of String)
Dim values1 As New List(Of String)
Dim values2 As New List(Of String)
Dim values3 As New List(Of String)
Dim values4 As New List(Of String)
Dim values5 As New List(Of String)
While reader.Read()
values.Add(reader("Question").ToString())
values1.Add(reader("Answer1").ToString())
values2.Add(reader("Answer2").ToString())
values3.Add(reader("Answer3").ToString())
values4.Add(reader("Answer4").ToString())
values5.Add(reader("CorrectAnswer").ToString())
End While
reader.Close()
Dim selectedValues As New HashSet(Of String)()
Dim selectedValues1 As New HashSet(Of String)()
Dim selectedValues2 As New HashSet(Of String)()
Dim selectedValues3 As New HashSet(Of String)()
Dim selectedValues4 As New HashSet(Of String)()
Dim selectedValues5 As New HashSet(Of String)()
Dim random As New Random()
If values.Count > 0 Then
Dim randomIndex As Integer
Do
randomIndex = random.Next(0, values.Count)
randomIndex = random.Next(0, values1.Count)
randomIndex = random.Next(0, values2.Count)
randomIndex = random.Next(0, values3.Count)
randomIndex = random.Next(0, values4.Count)
randomIndex = random.Next(0, values5.Count)
Loop While selectedValues1.Contains(values(randomIndex))
selectedValues1.Add(values(randomIndex))
Do
Loop While selectedValues1.Contains(values1(randomIndex))
selectedValues1.Add(values1(randomIndex))
Do
Loop While selectedValues2.Contains(values2(randomIndex))
selectedValues1.Add(values2(randomIndex))
Do
Loop While selectedValues3.Contains(values3(randomIndex))
selectedValues1.Add(values3(randomIndex))
Do
Loop While selectedValues4.Contains(values4(randomIndex))
selectedValues1.Add(values4(randomIndex))
Do
Loop While selectedValues5.Contains(values5(randomIndex))
selectedValues1.Add(values5(randomIndex))
LabelQuestion.Text = values(randomIndex)
Label2.Text = values1(randomIndex)
Label3.Text = values2(randomIndex)
Label4.Text = values3(randomIndex)
Label5.Text = values4(randomIndex)
Label6.Text = values5(randomIndex)
Else
MessageBox.Show("لا توجد بيانات في العمود المحدد.")
End If
End Using
