فيجوال بيسك 2008

تعريف لغة V.B.NET

هي إحدى لغات المستوى العالي وتتميز بالبساطة في استخدامها.. لغة البرمجة فيجوال بيسك هي بيئة تطوير ولغة برمجة من مايكروسوفت تستند إلى لغة البيسك الشهيرة. وهي تصنف ضمن لغات البرمجة الشيئية. منذ أن بدأت مايكروسوفت في إصدار الفيجوال بيسك وهي تلاقى نجاحا باهرا وشعبية لا بأس بها بين المبرمجين نظرا لسهولتها الشديدة. تناسب الفيجوال بيسك تطبيقات قواعد بيانات والتطبيقات المخصصة للشركات الصغيرة وبرامج الحسابات وهي مريحة وسهلة وتؤدى الغرض بالإضافة إلى أنها تسمح للمبرمج بالتركيز على حل المشكلة فغالباً  لا يواجه صعوبات فنية أثناء كتابة برنامج بالفيجوال بيسك.
إضافة ما هو الجديد VB.NET
لم تعد لVBواجهه استخدام مستقله، فكل لغات VS.NET تستخدم واجهه واحده ملئية نالأدوات التي تسهل بطريقه مدهشه عمليه تصيميم البرنامج إن هده المميزة تسمح لك بإنشاء تطبيقات تدخل فيها أكثر من لغة برمجة دون أن تحتاج لفتح أكثر من واجهه إنها واجهه واحدة فقط لكل المبرمجين.
هناك إمكانيات جديده في نافدة محرر الكود، منها قبام اللغة لكتابه جمله نهايه المقطع، بمجرد كتابتك لبدايه وضغط زر Enterفمثلا لو كتبت جمله IFX=0Then
EndIF
فأن محرر الكود سيضيف الجملة التالية تلقائيابل إنك لو لم تكتب كلمه Thenفسيكتبها لك محرر الكود تلقائيا.
هناك تحسينات كثيره في مظهر النمودج والأدوات وهدا بإلإضافه إلى أنه سيضع مؤشر الكتابة داخل مقطع IFوسيقوم بتنسيق المسافات  البادئة تلقائيا بحيث يبدو الكود منظما وواضحا عن قراءته.
كما أن هناك تحسينات كثيره في تلميحات الشاشة التي تعرض قيم المتغيرات وأنواعها ومعاملات الإجراءات والدوال وقيمها المعادة.هناك تحسينات كثيره في مظهر النمودج والأدوات وهناك العديد من الخصائص والوسائل الجديدة التي تمت إضافتها لهده العناصر بحيث تمنحك تحكما فمثلا ،أصبح بإمكانك تحديد درجه شفافيه النمودج كما صار بإمكانك تحديد المنطقة التي ستظهر منه على الشاشة بحيث يمكنك تصميم نمادج بأي شكل ولم تعد مضطر الكتابة الكود الدى يحافظ على تناسب مقا ييس الأدوات

إصدارات لغة V.B.NET

حولت شركه مايكروسوفت شغلها على لغه الفيجوال بيسيك 6 إلى لغه فيجوال دوت نت بداية من عام 2003 ومن ثم توال الإصدارات 2005 و 2008 و2009و إصدار 2010 واخيرا اصدار 2016

نافذة الخصائص Properties Window

عن طريق هذه النافذة يمكن من خلالها تعديل خصائص أي كائن   موجود على  form أو يمكن كذلك تعديل الform نفسه.
وكل كائن له مجموعه من الخصائص التي تختلف عن الكائنات الأخرى.
ولتعديل خصائص كائن ما يجب أولا ان يتم تحديد أو "تنشيط" هذا الكائن.

نافذة المشروع Solution Explorer

تستخدم نافذة المشروع لتتيح لك التعامل مع النوافذ والأدوات والملفات الموجودة في البرنامج الحالي. والمهم في هذه النقطة
" Forms " ندما تبدأ في تصميم برنامج جديد فإن هناك ثلاثه أنواع من الملفات يمكن أن تستخدمها :
• النوع الأول هو النوافذ
التي ستظهر للمستخدم أثناء تشغيل البرنامج وهذه يحفظها فيجول بيسيكفي ملفات تنتهي بالامتداد frm.
•النوع الثاني هو ملفات البرمجة Code Modules وهذه تنتهي بالامتداد.bas وتستخدم للإعلان عن المتغيرات Varibles
ووضع الإجراءات العامة General Procedures
•النوع الثالث هو الأدوات الخاصة وهي تظهر في نافذة الأدوات مثل بقية الأدوات الأخرى.وتنتهي بالامتداد *.ocx
وتوجد في دليل WindowsSystem
وعندما تحفظ البرنامج فإن فيجول بيسيك يضع جميع المعلومات الخاصة بهذا البرنامج في مشروع
هذا المشروع عبارة عن ملف ينتهي بالامتداد *.mak يضع فيه فيجول بيسيك عدد وأسماء النوافذ
التي تستخدمها وموقع كل نافذة على الشاشة ومواقع نوافذ فيجول بيسيك
وعندما ترغب في حفظ المشروع الحالي انقر على الرمز حفظ من شريط الأدوات أو اختر أمر save project من قائمة File

أداة العناوينLabels

وظيفة أداة  العناوينLabels
و
بعض خصائص أداة العناوينLabels

أداة قائمة العرض المركبة Combo Box

بعض خصائص الاداة
خاصية items والتي من خلالها يتحدد ما تكون العناصر التي داخل الاداة وتكون هي لاختيار المستخدم منها 
خاصية Auto complete source  والتي تحدد مصدر استكمال العنصر للمستخدم عند كتابة أول حرف من اختيارة
خاصية  Auto complete mode والتي منها تحدد نمظ الاستكمال

أداة التوقيت Timer

بعض خصائص الاداة
عرض الوقت في Labelأوغيره بالطريقة القياسيه   وكدلك التاريخ:
الأمر بسيط جدا ماعليك هو وضع Timerوتغييرخاصيه 1000=Intervalمثلا الوقت وأكثر لتاريخ ،ومن ثم كتابه الأمر التالي:Labell.caption=DateTimeومن ثم ضع.ستظهر لك قائمه من الطرق هدا تفصيل أهمها:
Date:07/07/2003
Dates:07-07-2003
Now:07/07/2003 04:37:21 ص
Times:16:38:46
هناك أيضا Timer:تعود بعدد الثوانى من منتصف الليل وحتى الوقت الحالى ويمكن أن تستفيد منها بأكثر من طريقه

أداة زر الاختيارRadioButton

بعض خصائص الاداة
اسم الأداة
Name
محاذاة
Aignment
الظهور
Appearance
لون الخلفية
BackColor
النص
Caption
الصورة عند عدم الفاعلية
DisabledPicture
الصورة عند النقر للأسفل
DownPicture
الفاعلية
Enabled
نوع الخط
Font
لون الخط
ForColor
البعد عن الحافة اليسرى
Left
مؤشر الماوس
MousePointer
الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الاتجاه من اليمين لليسار
RightToLeft
ترتيب Tab
TabIndex
إيقاف الTab
TabStop
ما سيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag
الصورة
Picture
النمط
Style
القيمة
Value
البعد عن حافة النافذة العليا
Top
مرئي أو مخفي
Visible
العرض
Width

أداة مربع الاختيار Check Box

بعض خصائص الاداة
يمكن استخدامها لاختيار أكثر من بديل واجد

أداة GroupBox

بعض خصائص الاداة

أداة DateTimePicker

الأداة DateTimePicker هي أهم أداة للتعامل مع الوقت والتاريخ في الدوت نت 
سنتعلم كيف نتعامل معها
أفتح مشروع جديد - أضف من شريط الأداوات 4 أدوات DateTimePicker وضعهم على الفورم
أهم خاصية في خواص أداة DateTimePicker هي خاصية Format لنحدد كيف نريد أن يكون شكل عرض التاريخ
فنجد في هذه الخاصية في نافذة خصائص الأداة أن لها أربع اختيارات
Long
Short
Time
Custom
Long سيمكنك من عرض التاريخ بصورة مطولة - اسم اليوم + اسم الشهر + رقم الشهر + رقم السنة
Short سيمكنك من عرض التاريخ بصورة مختصرة رقم اليوم + الشهر + السنة
Time سيمكنك من عرض الوقت
Custom تعرض فيه ما تريد حسب Format من قبلك ويكون هكذا
أن تحدد من الخاصية Format الاختيار Custom ثم تذهب إلى أعلى وتجد الخاصية
Custom Format وتسند لها Format من قبلك
مثلا لو أحببت عرض التاريخ بنظام dd/MM/yyyy تسند لها هذا الفورمات
طبعاً الفورمات الخاص بك الذي ادخلته في الخاصية Custom Format
لن يعمل إلا كانت الخاصية Format الاختيار لها هو Custom

كتابة كود البرمجة

http://www.youtube.com/watch?v=WmYyZoizS8Q

المتغيرات

هي اماكن بذكارة الكمبيوتر لها اسم و.تاخذ قيم متغيرة او قيم غير ثابتة 
الاعلان عن المتغيرات 
هي عملية اعطاء أسماء لخلايا الذاكرة لتاخذ قيم متغيرة 
يبدا لاعلان عن المتغيرات بالامر Dim ثم اسم المتغير ثم AS ثم نوع البيان ثم = القيمة والقيمة هنا يمكن ان تكتب في مرحله لاحقة 
والكود
Dim +اسم المتغير+as+نوع البيان 
الثوابت
هي اماكن بذكارة الكمبيوتر لها اسم و.تاخذ قيم ثابته 
الاعلان عن الثوابت
هي عملية اعطاء أسماء لخلايا الذاكرة لتاخذ قيم متغيرة 
يبدا لاعلان عن الثوابت بالامر const ثم اسم الثابت ثم AS ثم نوع البيان ثم = القيمة

أوامر المقارنة للتحكم في سير البرنامج

شرح الحلقا التكرارية باكملها
http://elshabab.com/docs/general/index.php?eh=newhit&subjectid=2447&subcategoryid=166&categoryid=14

المصفوفات

تعريف المصفوفة :
عبارة عن متغيرات مفهرسة Indexed Variables تحتوي على بيانات عديدة من نفس النوع Data Type.
كل مصفوفة لها اسم واحد يمكن استخدامه للرجوع إلى أي عنصر فيها وذلك باقتران هذا الاسم بدليل يمثل مكان العنصر فيها، ويمكن إنشاء مصفوفة لإحتواء أي نوع من أنواع البيانات مثل : النصوص والأعداد الحقيقية والصحيحة وغيرها، فأنواع البيانات المتوفرة في الفيجيوال بيسك هي :
Data Type in VB: {Byte, Boolean, Integer, Long, Single, Double, Currency, Decimal, Date, Object, String, Variant, User-defined }.
واستخدام المصفوفات في البرمجة يساعد في صناعة أكواد قصيرة وبسيطة ذات قوة كبيرة لأنه يمكن بناء Loops تتعامل بكفاءة مع المصفوفات مهما كان عدد عناصرها وذلك باستخدام دليل العنصر Index Number.
الخصائص الأساسية للمصفوفة في الفيجيوال بيسك :
اسم المصفوفة يمثل عنوان Address في الذاكرة ؛ ولا يمكن تغييره أثناء تنفيذ البرنامج.
يمكن الإعلان عن مصفوفة لأي نوع من أنواع البيانات بما في ذلك الأنواع المعرفة من قبل المستخدم User-defined type والـ Object Variables.
كل وحدة بيانات منفردة في المصفوفة تسمى عنصر Element.
جميع العناصر تكون من نفس النوع إلا في حالة الإعلان عن المصفوفة كـ Variant Data Type.
جميع العناصر تكون مخزنة على التتابع في ذاكرة الحاسوب ودليل أول عنصر هو الصفر كـ Default، ويمكن جعله 1 باستخدام جملة Option Base.
يحدد موقع العنصر بواسطة رقم الصف ورقم العمود الذي يقع فيه.
لكل مصفوفة حداً أعلى Upper bound، وحداً أدنى Lower bound ؛ وعناصر المصفوفة تكون محصورة بين هذين الحدين.
من الممكن أن تكون المصفوفة ذات بعد واحد أو متعددة الأبعاد.
هناك نوعين من المصفوفات :
المصفوفة ذات الحجم الثابت (Fixed-size array) : وهي التي يظل حجمها ثابت أثناء تشغيل البرنامج.
المصفوفة ذات الحجم المتغير (Dynamic-size array) : وهي التي يمكن تغيير حجمها أثناء تشغيل البرنامج.
الإعلان عن مصفوفات الحجم الثابتFixed-size Array:
هناك ثلاث طرق للإعلان عن هذا النوع تعتمد على النطاق scope الذي سوف تغطيه المصفوفة:
للإعلان عن مصفوفة عامة Puplic Array تستخدم جملة Puplic في قسم الإعلان Declaration Section للوحدة Module.
للإعلان عن Module-Level Array تستخدم جملة Private في قسم الإعلان الخاص بـProcedure.
للإعلان عن Local Array تستخدم جملة Dim في الـProcedure.
تحديد الحدين الأعلى والأدنى للمصفوفة Upper bound & Lower bound:
عند الإعلان عن مصفوفة، يكتب الحد الأعلى بعد الاسم وبين الأقواس.
لا يمكن أن يزيد الحد الأعلى عن نطاق نوع المتغير Long Data Type.
الحد الأدنى الإفتراضي Default هو الصفر.
لتحديد الحد الأدنى، ينبغي كتابته صراحة باستخدام كلمة To، كما سنرى في الأمثلة.
أمثلة:
مثال (1):
إعلان عن مصفوفة StudentId يمكن وضعه في جزء الإعلان الخاص بالـModule أو داخل الـProcedure:
Dim StudentId (1000) As Integer
وبذلك يكون عدد عناصر هذه المصفوفة 1001 عنصر. ولجعلها مصفوفة عامة، نستبدل Dim بـ Public كالتالي:
Public StudentId (1000) As Integer
ولتحديد الحد الأدنى لهذه المصفوفة بـ1 وبالتالي يصبح عدد عناصرها = 1000 عنصر فقط، نكتب To كالتالي:
Public StudentId (1 To 1000) As Integer
مثال (2):
الإعلان عن مصفوفة بها 51 عنصر مرقمة من 0 إلى 50 من دون تحديد نوع بيانات عناصرها، سيعتبر النوع Variants مباشرة:
Dim DayArray (50)
مثال(3):
الإعلان عن المتغير BirthDate على أنه مصفوفة من التواريخ المفهرسة من 1 حتى 10:
Dim BirthDate (1 To 10) As Date
المصفوفات متعددة الأبعاد Multi-Dimensional Arrays:
يقصد بكلمة بُعد هو عدد الدلائل (Indexes) المستخدمة للرجوع إلى عنصر في المصفوفة. تستخدم المصفوفات متعددة الأبعاد لتخزين بيانات مرتبطة ببعضها البعض.
مثال على ذلك:
تخزين كل نقطة Pixel موجودة على شاشة الحاسوب نحتاج لتخزين إحداثياتها x & y وهذا ممكن باستخدام مصفوفة ذات بعدين.
يمكن معرفة أبعاد مصفوفة بالنظر إلى تعريفها؛ حيث يتم الإعلان عن مصفوفة متعددة الأبعاد بذكر قيمة لأبعادها بعد اسمها مباشرة وداخل الأقواس، يتم فصل قيمة كل بعد بالفاصلة، سواء كانت ذات بعدين أو ثلاثة أبعاد كما ستوضح الأمثلة الآتية:
-Static A(3, 4) As Double
-Static A(1 To 10, 1 To 10) As Integer
- Dim B (3, 1 To 10, 1 To 15)
ملاحظة:
عدد عناصر المصفوفة متعددة الأبعاد يمكن معرفته بضرب قيم الأبعاد ببعضها.
عند إضافة أبعاد المصفوفة فإن مساحة التخزين المطلوبة سوف تزيد زيادة كبيرة ولذلك ينبغي الاحتراس وتفادي استخدام النوع Variant قدر الإمكان لما يتطلبه من مساحة تخزينية كبيرة!
استخدام الـLoops لمعالجة المصفوفات:
يمكن بكفاءة وسهولة معالجة المصفوفات باستخدام الـLoops وخصوصاً المصفوفات متعددة الأبعاد حيث يتم معالجتها باستخدام Loops متداخلة.
مثال:
الجمل التالية سوف تعطي قيمة لكل عنصر من عناصر المصفوفة A هذه القيمة تكون مرتبطة بموقع العنصر داخل المصفوفة كما سنرى:
Dim I As Integer, J As Integer
Static A(1 To 10, 1 To 10) As Integer
For I=1 To 10
For J=1 To 10
A(I, J)= I*10*J
Next J
Next I
مصدر الموضوع المصفوفات في visual basic للمبتدئين - منتديات الهندسة نت http://www.alhandasa.net/forum/showthread.php?t=2481#ixzz1pahiwfLg
ما هي المصفوفة :
هي عبارة عن مجموعة من العناصر التي تتميز بأن لها نوع بيانات واحد ويتم التعامل معها من خلال اسم واحد يضمها جميعا ويتم تمييز كل عنصر فيها من خلال ترتيبة فيها.
ما هي خصائص المصفوفات : 
1-المصفوفة عبارة عن مجموعة من العناصر
2- تكون كل عناصر المصفوفة من نوع بيانات واحد.
3- للمصفوفة اسم واحد.
4-يتم تميز كل عنصر والإشارة إليه من خلال ترتيبة لباقي عناصر المصفوفة.
5- يبدأ ترتيب المصفوفة من صفر.
6- متسلسلة الوجود في الذاكرة حيث أن عناصرها توجد بصورة متسلسة في الذاكرة.
مميزات المصفوفة :
1- أنها تعتمد على مفهوم الفصيلة مما يمكننا من استدعاء الكثير من الدوال والخصائص الجاهزة للتحكم في المصفوفة.
2- يتم تعريف المصفوفة كالآتي :  stDimarrname(siz)as datatype
ونلاحظ هنا أن الsize على العكس من كل اللغات لا يعبر عن العدد العناصر ولكن يعبر عن ترتيب آخر عنصر في المصفوفة فإذا كان على سبيل المثال 5 فذلك يعني أن عدد العناصر 6 لأننا بدأنا من الترتيب صفر.