الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود عرض بيانات حقل معين في combo box

بدأه مبرمج الصغير في 2 يوليو 2007 · 8 رد · 3,739 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اخواني اريد كود يجعل كومبو بوكس يعرض لي حقل معين من جدول اخري مثلا جدول t1 وحقل car

اريد ان يعرض لي البيانات اللي فيه ا

#2

For I = 1 To n

Combo1.AddItem Rs1!car

Rs1.MoveNext

Next

اخواني وجدت هذا الكود ولكن انا اريده ياخذ من الجدول اخري

فمثلا لديه جدول انواع السيارات واريد ان اعرضه في فورم المبيعات عن طريق كومبو بوكس

#3

في حدث التحميل اكتب التالي

DO UNTIL DATA1.RECORDSET.EOF=FALSE

COMBO1.ADDITEM DATA1.RECORDSET.FIELDS("CAR") ' OK

DATA1.RECORDSET.MOVE NEXT

هذا اذا كنت رابط قاعدة البيانات عن طريق اداة الداتا

اما اذا كنت رابط قاعدة البيانات عن طريق ADODC1 فلن تغير شيء سوي الاسم فقط

اما عن طريق الكود

DO UNTIL RS.EOF

COMBO1.ADDITEM RS!CAR

RS.MOVE NEXT

هكذا يعرض لك محتويات الحقل CAR لتظهر كافة البيانات . وان شاء الله اجد ردرو علي هذا الموضوع اذا تم الحل .

#4

تم حل المشكلة بشكل احترافي

sql1 = "select * from emp "
If Rs1.State = adStateOpen Then Rs1.Close
Rs1.Open sql1, Cn, adOpenKeyset, adLockOptimistic
If Rs1.RecordCount = 0 Then
For i = 1 To n
List1.AddItem Rs1!Name
Rs1.MoveNext
Next
#5
اقتباس
تم حل المشكلة بشكل احترافي

ما شاء الله

نصف العلم *** البحث الجيد

#6

أخي الكريم ، تحية طيبة وبعد ،

آسف علي التأخير !!!

آداة الـ ComboBox أو الـ ListBox يحتويان علي إجراء AddItem و خاصية ItemData !!!

فالإجراء AddItem مسئول عن إدراء فئة جديدة بالآداة المحددة ، فتتطلب منك إدراج قيمة نصية كما يلي :

Combo1.AddItem "Ahmed"

أما الخاصية ItemData فهي عبارة عن مصفوفة من البيانات الرقمية ، ففي هذه المصفوفة يمكن إستخدامها في إدراج المفتاح الرئي لجدول البيانات لإستخدامها لاحقاً ( أنظر المثال المرفق )

وشكراً

Project.rar

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#7
ناني مصطفي كتب:
في حدث التحميل اكتب التالي

DO UNTIL DATA1.RECORDSET.EOF=FALSE

COMBO1.ADDITEM DATA1.RECORDSET.FIELDS("CAR") ' OK

DATA1.RECORDSET.MOVE NEXT

هذا اذا كنت رابط قاعدة البيانات عن طريق اداة الداتا

اما اذا كنت رابط قاعدة البيانات عن طريق ADODC1 فلن تغير شيء سوي الاسم فقط

اما عن طريق الكود

DO UNTIL RS.EOF

COMBO1.ADDITEM RS!CAR

RS.MOVE NEXT

هكذا يعرض لك محتويات الحقل CAR لتظهر كافة البيانات . وان شاء الله اجد ردرو علي هذا الموضوع اذا تم الحل .

السلام عليكم

مشكور على هذا المجهود الرائع

ولكن عند استخدمت الكود ظهرت لى رسالة خط ولا اعلم السبب واليك المثال بالمرفقات

favorites.rar

#8

السلام عليكم...

شكراً للأخ MMA_EG_Cairo على المثال، و لكن لي تعليق واحد فقط، و هو أن العديد من المبرمجين المبتدئين لا ينتبهون إلى أهمية عدم ترك الحقول فارغة (تحتوي على NULL) في قاعدة البيانات، أو أننا فعلاً نسمح بوجود قيم NULL في بعض الحقول (حقل ملاحظات مثلاً) و لذلك يجب أخذ هذه النقطة بعين الاعتبار عند قراءة قيم من حقول قاعدة البيانات لأن VB لا تستطيع تحويل قيم NULL لأي نوع آخر من البيانات مما ينتج عنه خطأ و إغلاق التطبيق:

  1.  
  2. Do While Not Rs.EOF
  3. If Not IsNull(Rs!NameEx) Then
  4. Combo1.AddItem Rs!NameEx
  5. Combo1.ItemData(Combo1.ListCount - 1) = Rs!Serial
  6. End If
  7. Rs.MoveNext
  8. Loop
  9.  

نرجو الاستفادة و السلام.

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

#9

السلام عليكم ورحمة الله

اخونى الكرام اين الحل عدد مرات التحميل ثلاث مرات ولارد واحد

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…