السلام عليكم
كود لعمل خصم
etotal=هو تكست بوكس المجموع الكلي
dis= هو تكست بوكس كمية الخصم بال %
اليكم الصورة
واليكم المشكلة التي حصلت
لم يقم بعمل خصم ما المشكلة
ممكن توضح لي لماذا تستخدم On Error Resume Next
انا فقط لا أعلم هدفك من استخدامها
أيضا لماذا لا تستخدم جملة Try ..... Catch
أيضا لماذا لا تستخدم Integer.Parse
بدلا من الدالة Val
الدوت نت حاليا بها أفكار و دوال أفضل بكثير من النسخ القديمة
مشكورين جميعاً ويعطيكم العافية
المشكلة الي كانت عندي مش بالكود المشكلة هي انو ال textbox نفسو في مشكلة ما بعرف بضبط المهم غيرتو وزبط معي
اخي العزيز silverlight أنا استخدم دائمة Try للتبع الخطأ وكشفه ورسالة الخطأ التي ظهرت في الصورة هي من جملة Try التي استخدمتها للكشف عن الخطأ
اما بالنسبة On Error Resume Next اذا حدث خطأ يتابع وهذه خطأ أيضاً ولكن فقط للتجربة
أخي الفاضل Deya R Ataya
سبب استفساري ان المبرمج يجب أن يضع في حساباته ان المستخدم قد يقوم بإدخال تكست بدلا من أرقام أو لا يقوم بإدخال التكست إطلاقا و هنا الداول المستخدمة ستعود لك بقيمة عبارة عن Integer أيضا
مثلا الدالة Val ستنفذ المطلوب منها و تقوم بتحويل التكست الي Integer ولكنها سوف تعود بقيمة تساوي صفر
كود :
Me.Text = Val("VB4ARAB")
اما لو استخدمت Integer.Parse فسوف يحدث خطأ عند التنفيذ
كود :
Me.Text = Integer.Parse("VB4Arab")
وهذا هو الفارق المهم بين الاسلوبان
أيضا Integer.Parse تسمح لك بعمل Format للأرقام
عموما في جميع الحالات من المؤكد انه يجب التأكد من أن ما كتبه المستخدم في التكست بوكس عبارة عن أرقام
قبل استخدام اي من الدالتان أعلاه
اشكرك
وهذا صحيح انا استخدم كود في حدث keypress الخاص بال تكست للسماح فقط بادخال الارقام فقط داخله