عرض مشاركة واحدة
  #12  
قديم 07-30-2007, 02:07 AM
الصورة الرمزية الاستاذ خليل
الاستاذ خليل الاستاذ خليل غير متواجد حالياً
المدير العام


 
تاريخ التسجيل: Jan 2003
الدولة: مملكة البحرين
المشاركات: 3,977
الخطا الذي سببه هذا هو الكود

كود:
If Val(TextBox1.Text) = "الرابع" Then
trueq = trueq + 1
Else
Falseq = Falseq + 1
End If
If Val(TextBox2.Text) = "الثالث" Then
trueq = trueq + 1
Else
Falseq = Falseq + 1
End If
If Val(TextBox3.Text) = "الاول" Then
trueq = trueq + 1
Else
Falseq = Falseq + 1
End If
If Val(TextBox4.Text) = "الثاني" Then
trueq = trueq + 1
Else
Falseq = Falseq + 1
 End If
سبب الخطأ انك تحول قيمة ما بداخل المربعات النصية لارقام حيث انك استعملت val
و هي تقوم بتحويل المربعات لارقام لكنت جعلت قيمتها نص فاكيد ضهر خطا
ايضا باول الكود جعلته لا يقبل الا الارقام بانك استعملت هذا الكود
كود:
If IsNumeric(TextBox1.Text) = False Then
MsgBox "القيمة المكتوبة صحيحة", vbOKOnly, "انتبه"
TextBox1.Text = " "
Exit Sub
End If
 
' CommandButton1.Enabled =  False
 trueq = 0
 Falseq = 0
If IsNumeric(TextBox2.Text) = False Then
MsgBox "القيمة المكتوبة غير صحيحة", vbOKOnly, "انتبه"
TextBox2.Text = ""
Exit Sub
End If
 
' CommandButton1.Enabled =  False
 trueq = 0
 Falseq = 0
If IsNumeric(TextBox3.Text) = False Then
MsgBox "القيمة المكتوبة غير صحيحة", vbOKOnly, "انتبه"
TextBox3.Text = ""
Exit Sub
End If
 
' CommandButton1.Enabled =  False
 trueq = 0
 Falseq = 0
If IsNumeric(TextBox4.Text) = False Then
MsgBox "القيمة المكتوبة  صحيحة", vbOKOnly, "انتبه"
TextBox4.Text = ""
Exit Sub
End If
و انت كتبت حروف هذا لا ينفع

الحل بحذف الجمل و الكتابة بداخلها ارقام
كما يوجد خطأ بالسطر
كود:
Label11.Caption = "الخطــأ : " & Falseq
سببه عدم وجود Label11 فانت لم تضعه اصلا فكيف سيكتب بداخله عدد الاجابات الخاطئة؟

ايضا
كود:
If jawab = False Then
trueq = trueq + 1
Else
Falseq = Falseq + 1
End If

ما فائدته ؟ لا ينفع هذا لانه لا وجود الى المتغير jawab بكودك فلس له فائدة فاكيد سيجمع 1 على الاجابات الصحيحة لانه سيعتبر jawab دائما خطا


ايضا الكود
كود:
  Dim Start As Long
    Start = Timer
    Do While Timer < Start + 30 'a 30 second delay (Change To any numer you want)


        DoEvents ' Yield To other processes.
        Loop
        
    
Comsoal_Click

Labeltruefalse.Visible = False
انت وضعته في زر سؤال و مكانه غير مناسب لانه سيوقف البرنامج مدة زمنية ثم سيضهر سؤال
المكان الصحيح هو في زر النتيجة لكي يوقف البرنامج بعد مشاهدة النتيجة قليلا و يأتي بسؤال جديد

كما انك اخطأت وضعت Labeltruefalse في الكود و هو غير موجود اصلا اي لم ترسمه بالشريحة
و اليك الملف بعد التصحيح

لكنه لا توجد عشوائية في الاختيار الاجابات فدائما سيضهر الجواب بنمط واحد و هو لا احبذه لان الطلبة سيحفظو الجواب
الملفات المرفقة
نوع الملف: rar حدد الربع بعد التعديل.rar‏ (38.6 كيلوبايت, المشاهدات 952)
__________________
هذا من فضل ربي
رد مع اقتباس