04-10-18, 09:35 PM
(04-10-18, 09:28 PM)princelovelorn كتب :(04-10-18, 03:22 PM)Hazem1 كتب :(03-10-18, 11:11 PM)princelovelorn كتب : إذا كنت تريد عدم السماح بترك الtextbox او combobox فارغين نصياجزاك الله خيراً أخي العزيز [b][b]princelovelorn[/b]، ما قصرت، هناك نقطة أُخرى إن كنت تعلمها فالحمد لله وزادك الله علماً، بعد تحسين الكود وجدت الأفضل استخدام أداة ErrorProvider عوضًا عن المُتغير لأن أيقونة الخطأ التي تظهر عندما تُصبح القيمة فارغة لن تختفي إلا باستخدام الأداة.[/b]
بغض النظر عن نوع النص
ممكن تستخدم الطريقة التالية
كود :
Dim errorpro As New ErrorProvider
If Trim(Textbox1.Text) = "" Then
errorpro.SetError(Textbox1, "يرجى إدخال نص")
MsgBox("يرجى إدخال نص")
Exit Sub
ElseIf Trim(Textbox2.Text) = "" Then
errorpro.SetError(Textbox2, "يرجى إدخال نص")
MsgBox("يرجى إدخال نص")
Exit Sub
ElseIf Trim(Combobox1.Text) = "" Then
errorpro.SetError(Combobox1, "يرجى إدخال نص")
MsgBox("يرجى إدخال نص")
Exit Sub
End If
أمين وإياك أخي الفاضل
وهذا تقصير مني للأسف لم أخبرك بها
فلكي تختفى أيقونة الخطأ يجب ( وضع الكود التالي في حدث textchanged (
كود :
errorpro.SetError(TextBox1, "")
errorpro.SetError(TextBox2, "")
errorpro.SetError(Combobox1, "")
وهو أعطاء قيمة فارغة للأداة وبالتالي تلقائيا لن تظهر بعد كتابة حرف واحد
ويجب وضع الكود في حدث textchanged لكل كنترول تستخدم معه اداة errorprovider
أو ممكن تعمل sub للتنظيف لتسهيل الأمور عليك
وسواء أستخدمت الأداة أو المتغير فستنجح بإذن الله معك
وأيضا نصيحة من أخيك أرجو أن تتقبلها إن وقعت بخطأ ما في البرمجة في كود معين حاول تضعه في try catch لكي تصيد الخطأ وتحدد مكانه بالظبط
لم تُقصر أخي الحبيب [b][b]princelovelorn ، بل تركت لي مجالاً للاجتهاد والتفكير وليس الاعتماد على النسخ واللصق، فجزاك الله خيراً، نصيحتك على العين والرأس وسأعمل بها دومًا إن شاء الله، الله يرضى عنك ويبارك في عُمرك وييسر لك كل أمر ويسترنا وإياك في الدُنيا والآخرة.[/b][/b]
عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه.
