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

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

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

مُساهمة من طرف نصر اسماعيل في الثلاثاء فبراير 06, 2007 3:43 am

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

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

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

الدرس

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

نوع البيانات إسم الحقل
string name
integer mathmark
integer sincemark

قم بعد ذلك بإضافة سجلات لقاعدة البيانات بالقيم التي تريدها
الان افتح مشروع فيجوال بيسك جديد و قم بتعريف المتغيرين في قسم الاجراءات العامة كما في الكود التالي :

Public d As Database
Public tb As Recordset


الان اكتب الكود التالي و الذي يقوم بربط قاعدة البيانات بالبرنامج
Set db = DBEngine.Workspaces(0).OpenDatabase(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).OpenDatabase(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

بعد ذلك وفي السطر الاخير نريد ان يضع البرنامج اسم الشخص اسفل الرسم البياني و هو مايسمى بالصف 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

_________________
نصر اسماعيل
naser-70@scs-net.org
avatar
نصر اسماعيل
مشرف منتدى قواعد البيانات
مشرف  منتدى قواعد البيانات

عدد الرسائل : 70
العمر : 46
تاريخ التسجيل : 21/11/2006

معاينة صفحة البيانات الشخصي للعضو

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى