العودة   منتديات العبير > مجلس اختبارات وشهادات الحاسب الآلي > منتدى الدورات التأهيلية

منتدى الدورات التأهيلية اسئلة دورة ادخال بيانات ومعالجة نصوص والاختبار الشامل


عدد مرات النقر : 33,042
عدد  مرات الظهور : 38,680,571

موضوع مغلق
 
LinkBack أدوات الموضوع انواع عرض الموضوع
قديم 29-05-2006, 12:59 AM   #1

الصورة الرمزية صمت الجمال

 رقم العضوية :  35
 تاريخ التسجيل :  06-09-2004
 المشاركات :  1,120
 العمر :  38
 عدد النقاط :  10
 قوة التقييم :  صمت الجمال is on a distinguished road
 اخر مواضيع » صمت الجمال
 تفاصيل مشاركات » صمت الجمال
 أوسمة و جوائز » صمت الجمال
 معلومات الاتصال بـ صمت الجمال

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


الرسم البياني


:المقدمة

الرسم البياني تطبيق مهم جدا معرفة التعامل معه حيث يعطي تصورا و ملخصا عن الحقول في السجلات و بالنسبة لفيجوال بيسك فهو يتيح لك عمل الرسوم البيانية التي تستمد مصدرها من قاعدة بيانات بكل سهولة وسيكون هذا الدرس الجزء الاول في الرسم البياني

هناك عدة طرق لإظهار الرسم البياني ، فيمكنك ان تظهر رسم يبين القيم في سجل واحد مثلا درجات طالب في مادتين و لكي ترى الرسم البياني الذي يمثل الطلاب الاخرين تنتقل بزر ينقلك للسجل التالي وهذا ما سنتعلمه في هذا الدرس

أو تقوم بعرض جميع سجلات الطلاب في رسم واحد مقسم على اساس كل سجل و سستعرف على هذا بالتفصيل في دروس قادمة


الدرس

قبل ان تبدأ يجب ان تقوم بعمل قاعدة بيانات اسمها db1 و تحتوي على جدول اسمه tb1 فيه الحقول التالية :




نوع البيانات
إسم الحقل

string
name

integer
mathmark

integer
sincemark




قم بعد ذلك بإضافة سجلات لقاعدة البيانات بالقيم التي تريدها

الان افتح مشروع فيجوال بيسك جديد ، بعد ذلك قم بتعريف او ربط قاعدة البيانات في البرنامج بالكود الذي تعلمناه في الدروس السابقة و سأذكره هنا ان كنت قد نسيت

أولا اذهب الى Project >> refrences ثم حدد المكتبة Microsoft DAO 3.51 ****************** library

قم بتعريف المتغيرين في قسم الاجراءات العامة كما في الكود التالي :


اقتباس:
Public d As Data************
Public tb As Recordset



الان اكتب الكود التالي و الذي يقوم بربط قاعدة البيانات بالبرنامج


اقتباس:
Set db = DBEngine.Workspaces(0).OpenData************(App.Path & "\db1.mdb", True)
Set tb = db.OpenRecordset("tb1", dbOpenTable)




الان تأتي الخطوة الاساسية الاولى وهي اضافة أداة الرسم البياني و للقيام بذلك اذهب قائمة Project و اختر Components سيظر لك مربع حوار حدد منه الاختيارMicrosoft Chart Control 6.0 (OLEDB)

ستظهر لك الايقونه الخاصة به في صندوق الادوات بعد ذلك انقر على هذه الايقونة و ارسم شكل مربع على اغلب الفورم و سينتج لك صورة رسم بياني

الان حدد الرسم البياني و اذهب الى نافذة الخائص و غير الخاصية AutoIncrement إلى True و هذا ضروري لكي يقوم الرسم البياني بتغيير و تحديث نفسه تلقائيا ولن يعمل بدون ان تجعل هذه الخاصية على True

أيضا اضبط الخاصية ColumnCount على 2 حيث ان هذه الخاصية تعني عدد الاعمدة في الرسم البياني و بما اننا نحتاج الى عمودين فقط هما درجة الرياضيات و العلوم وضعنا عدد الاعمدة 2

و اضبط الخاصية RowCount على 1 وهذا الرقم يدل على عدد السجلات ا لتي تريد ان تعرضها في المرة الواحدة و ستتعرف على ذلك بالتفصيل في الدرس القادم

والان ماهو الكود الذي سيعرض البيانات على الرسم البياني ، اولا يجب ان تحدد متى يجب العرض هل عند تشغيل البرنامج ام عند النقر على زر معين ؟ و الطريقة الافضل ان تجعله يقوم يعرض حال تنفيذ او تحميل الفورم و بعد ذلك يمكنه ان ينتقل الى السجل التالي بواسطة زر تنقل ، هذا يقودنا الى انه يجب علينا وضع كود في حدث ا لتحميل للفورم لكي يعرض مباشرة و الكود سيكون الكود التالي الذي باللون الاحمر :

لاحظ ان اسم ادة الرسم البياني هو MSChart1




اقتباس:

Private Sub Form_Load()
Set db = DBEngine.Workspaces(0).OpenData************(App.Path & "\db1.mdb", True)
Set tb = db.OpenRecordset("tb1", dbOpenTable)

MSChart1.Column = 1
MSChart1.Data = tb!mathmark
MSChart1.Column = 2
MSChart1.Data = tb!sincemark
MSChart1.RowLabel = tb!Name

End Sub


أعتقد ان الكود السابق سهل وواضح للجميع و هو يذكرنا بالأداة FlexGrid ، ففي الكود السابق حددنا اولا رقم العمود الذي ستنفذ عليه الاوامر القادمة و هو عمود رقم 1 ثم بعد ذلك و ضحنا الامر الذي نريده ان ينفذ على هذا العمود وهو وضع قيمة الحقل mathmark في هذا العمود ليعبر عنها بيانيا ونستخدم لهذا الامر Data كما هو واضح ، و الان نريد وضع قيم الحقل الثاني وهو sincemark في العمود الثاني و نتبع لذلك نفس الخطوات السابقة حيث نحدد رقم العمود وهو 2 ثم ما نريد منه و هو التعبير عن هذا الحقل في شكل بيانا

بعد ذلك وفي السطر الاخير نريد ان يضع البرنامج اسم الشخص اسفل الرسم البياني و هو مايسمى بالصف Row ونستخدم الخاصية RowLabel و نخزن فيها قيمة حقل الاسم Name

الان المرحلة الثانية و هي ان يقوم المستخدم بالتنقل بين الحقول لإظهارها في شكل الرسم البياني و سنقوم بإنشاء زرّي أمر واحد للتقدم للأمام وواحد للرجوع للخلف ، في الزر المخصص للتنقل للإمام نستخدم الكود التالي :


اقتباس:
Private Sub Command1_Click()
tb.MoveNext ' للإنتقال للسجل التالي
If tb.EOF Then tb.MoveLast ' لتفادي المشاكل عند اخر سجل
MSChart1.Column = 1
MSChart1.Data = tb!mathmark
MSChart1.Column = 2
MSChart1.Data = tb!sincemark
MSChart1.RowLabel = tb!Name
End Sub


لاحظ أن الكود نفس الكود في حدث التحميل مع الاخذ في الاعتبار نقطتين أولا الانتقال للسجل التالي لكي يتم عرض البيانات في السجل التالي ، و وضع شرط ليتحقق هل عند الوصول للسجل الاخير ليقوم بالخروج من ا لاجراء لكي نتفادى المشاكل ،، هذا كل شيء

أما الكود الذي يقوم بالرجوع الى الخلف فهو :


اقتباس:
Private Sub Command2_Click()
tb.MovePrevious
If tb.BOF Then tb.MoveFirst
MSChart1.Column = 1
MSChart1.Data = tb!mathmark
MSChart1.Column = 2
MSChart1.Data = tb!sincemark
MSChart1.RowLabel = tb!Name
End Sub


الكود السابق نفس كود الانتقال للإمام مع تغيير امر التحرك للأمام بأمر التحرك للخلف MovePrevious و تم تغيير شرط التأكد من وصولنا للسجل الاول بحيث يتوافق مع الحاله






الشكل النهائي



لاحظ أن المحورين يتم تقسيمهما تلقائيا على حسب الارقام في السجلات

يمكنك التحكم في بعض الخصائص مثل جعل الرسم البياني على شكل خطوط او مجسمات ثلاثية الابعاد و غير ذلك يمكنك اكتشاف ذلك بنفس بالضغط على الزر الايمن على الرسم البياني و اختيار Properties

توقيع :




أنا رحاله صغير أحمل في جيبي بذور ( بذور محبه ) كلما التقيت بإنسان زرعة معه بذوري إن سقاها كبرت وأينعت وإن لم يسقها ماتت واندثرت
وما همني إن سقاها أو ماتت ما يهمني هو عندما أصعد قمت الجبل وأنظر خلفي وأرى بساتين المحبة أشعر حينها بالإنسانيه


صمت الجمال غير متواجد حالياً
رسالة لكل زوار منتديات العبير

عزيزي الزائر أتمنى انك استفدت من الموضوع و لكن من اجل منتدى ارقي و ارقي برجاء عدم نقل الموضوع و يمكنك التسجيل معنا و المشاركة معنا و النقاش في كافه المواضيع الجاده اذا رغبت في ذلك فانا لا ادعوك للتسجيل بل ادعوك للإبداع معنا . للتسجيل اضغظ هنا .

قديم 29-05-2006, 11:11 AM   #2
Has A Reputation Beyond Repute

الصورة الرمزية أحمد نسيب

 رقم العضوية :  220
 تاريخ التسجيل :  17-10-2005
 المشاركات :  4,029
 الجـنـس :  ذكر
 عدد النقاط :  50215
 قوة التقييم :  أحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud of
 اخر مواضيع » أحمد نسيب
 تفاصيل مشاركات » أحمد نسيب
 أوسمة و جوائز » أحمد نسيب
 معلومات الاتصال بـ أحمد نسيب

افتراضي


ربي يزيد من علمه كمان وكمان


الف مليون شكر على الدروس الرائعة

أخوك أحمد نسيب

توقيع :

سبحانك اللهم وبحمدَك

من يهتم بنفسه العليا يصبح رجلا عظيما، أما من يهتم بنفسه السفلي فيصبح رجل وضيعا.
منسيوس
فيلسوف صيني كونفوشيوسي قديم.

أحمد نسيب غير متواجد حالياً
قديم 29-05-2006, 11:48 AM   #3

الصورة الرمزية عبد الله الساهر

 رقم العضوية :  1
 تاريخ التسجيل :  22-07-2004
 المشاركات :  71,583
 الدولة :  ムレ3乃乇乇尺
 الجـنـس :  ذكر
 العمر :  38
 عدد النقاط :  243859
 قوة التقييم :  عبد الله الساهر تم تعطيل التقييم
 SMS :

حتى لو اجتهدت و قطعت فؤادك.. ووضعته للناس في طبق فضي ليرضوا عنك لن تفلح وربما لن تصل لمستوى يرضيك أنت عن نفسك فاجتهد ليكون الله وحده راضياً عنك وأغمض عينيك عن ما سواه

 اخر مواضيع » عبد الله الساهر
 تفاصيل مشاركات » عبد الله الساهر
 أوسمة و جوائز » عبد الله الساهر
 معلومات الاتصال بـ عبد الله الساهر

افتراضي


شكرا لك انتي الاستاذة صمت الجمال


الدائمة الابداع

توقيع :





رحمك الله يا أنس
وجعل الفردوس دارك ومستقرك



عبد الله الساهر غير متواجد حالياً
قديم 29-05-2006, 06:00 PM   #4

الصورة الرمزية أمـ جود ـ

 رقم العضوية :  4
 تاريخ التسجيل :  22-07-2004
 المشاركات :  6,182
 العمر :  36
 عدد النقاط :  32
 قوة التقييم :  أمـ جود ـ is on a distinguished road
 اخر مواضيع » أمـ جود ـ
 تفاصيل مشاركات » أمـ جود ـ
 أوسمة و جوائز » أمـ جود ـ
 معلومات الاتصال بـ أمـ جود ـ

افتراضي


يعطيك اللعافية


يسلموا الغالية صمت

توقيع :



مٍَآعُآدُ يًرٍضَيًنٍيً وَفٍآ...و لآيًزٍعُلنٍيً جََفٍآ..
مٍَتِسِآويًهُـ َفٍيً خٍآطَرٍيً ..ظِلمٍَـ آلبُشُرٍ وآنٍصِآَفٍهُمٍَـ..
ولو تِوَقٍَِفٍ آلدُنٍيًآ عُلىٍ شُمٍَعُ آلغٌَرٍآمٍَـ آلليً طََفٍآ..
بُعُضَ آلشُمٍَوعُ..أنٍآ أتِعُمٍَدُ گسِرٍهُآ وآتِلآَفٍهُآ..

أمـ جود ـ غير متواجد حالياً
قديم 31-05-2006, 02:30 AM   #5

الصورة الرمزية صمت الجمال

 رقم العضوية :  35
 تاريخ التسجيل :  06-09-2004
 المشاركات :  1,120
 العمر :  38
 عدد النقاط :  10
 قوة التقييم :  صمت الجمال is on a distinguished road
 اخر مواضيع » صمت الجمال
 تفاصيل مشاركات » صمت الجمال
 أوسمة و جوائز » صمت الجمال
 معلومات الاتصال بـ صمت الجمال

افتراضي


انا كل ما احس بكلماتكم


احس اني لازم اقدم واقدم حتى ارضيكم

صمت الجمال غير متواجد حالياً
موضوع مغلق

مواقع النشر (المفضلة)


أدوات الموضوع
انواع عرض الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
التربية توضح تنظيم الفسح بين الحصص عبد الله الساهر مجلس أوراق ملونة 4 07-11-2012 05:47 PM


الساعة الآن 01:02 PM


Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0 TranZ By Almuhajir
Ads Organizer 3.0.3 by Analytics - Distance Education
جميع الحقوق محفوظة لـ : منتديات العبير
المحتوى المنشور فى موقع العبير لايعبر بالضرورة عن وجهة نظر الإدارة وإنما يعبر عن وجهة نظر كاتبها