04-10-18, 06:16 PM
ههههههههه الصراحة انا مستغرب ليش ما زبط معاك امر غريب مع انه الكود بستخدمه كثير وهو ايضا يستخدم لتفريغ الكومبو بوكس على كل الحال المهم انه امورك زبطت
بالتوفيق
بالتوفيق
If ComboBox1.SelectedIndex = -1 Then
MsgBox("no data")
Else
MsgBox("okey")
End If
(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
errorpro.SetError(TextBox1, "")
errorpro.SetError(TextBox2, "")
errorpro.SetError(Combobox1, "")(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 لكي تصيد الخطأ وتحدد مكانه بالظبط
(04-10-18, 08:17 PM)ay.alhaj كتب : [ -> ]هذا مثال للكود قمت بتطبيقه وهو يعمل
PHP كود :
If ComboBox1.SelectedIndex = -1 Then
MsgBox("no data")
Else
MsgBox("okey")
End If
هذه الصورة في حال الكومبو بوكس فاضي شوف الرسالة
![]()
هذه الصورة في حال الكومبو بوكس يوجد فيه اختيار
![]()