المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : دورس بالفيجوال بيسك



بومبه
06-11-2005, 09:40 AM
السلام عليكم ورحمة الله وبركاته
هذا الفدول بيسك ومافي اسهل منه
http://bmw2003.jeeran.com/1.JPG
http://bmw2003.jeeran.com/1.JPG
اولا نقوم بفتح الفيجول ونختار مشروع قياسي جديد كما فى الصوره
http://bmw2003.jeeran.com/2.JPG
http://bmw2003.jeeran.com/2.JPG
سيظهر لنا نافذة مشروع العمل كما فى الشكل
http://bmw2003.jeeran.com/3.JPG
http://bmw2003.jeeran.com/3.JPG
نضغط على حرف Aكما فى الصوره وذلك لوضع label1 اليبل على نافذة المشروع ثم نقوم بالضغط على
الساعه كما فى الصوره لاضافة Timer1 على نافذة المشروع 0
http://bmw2003.jeeran.com/4.jpg
http://bmw2003.jeeran.com/4.jpg
الان لاحظ الليبل والتايمر على المشروع نقوم بالضغط على الليبلLabel1 لنمسح محتواه فى خاصية caption ليصبح فارغا لاحظ الصوره
http://bmw2003.jeeran.com/5.JPG
http://bmw2003.jeeran.com/5.JPG
الان نضغط على التايمر (الساعه) ضغطه واحده ستظهر خصائصه على اليمين لاحظ الصوره ونغير Interval نضع قيمتها 1000 لاحظ الصوره
http://bmw2003.jeeran.com/6.JPG
http://bmw2003.jeeran.com/6.JPG
لتغير خلفية الليبل label1 نقوم بالضغط عليه مره واحده ستظهر خصائصه على اليمين ستجد backcloor اضغط على السهم الاسود واختر اللون
مثلا الاسود لاحظ الصوره0
http://bmw2003.jeeran.com/7.JPG
http://bmw2003.jeeran.com/7.JPG
لتغيير لون النص الذي سوف يظهر فى الليبل Label1 نضغط على السهم اللذي عليه دائره (لاحظ الصوره ) حتى ترى fillolor اضغط على السهم
الاسود واختر اللون مثلا الاخضر 00لاحظ الصوره
http://bmw2003.jeeran.com/8.JPG
http://bmw2003.jeeran.com/8.JPG
الان نقوم بتغير عنوان الفورم نضغط مره واحده على اي مكان فى الفورم ستظهر لنا خصائصه على اليمين لاحظ الصوره نقوم يتغير العنوان
http://bmw2003.jeeran.com/10.JPG
http://bmw2003.jeeran.com/10.JPG
الان نكتب الكود لكي تشتغل الساعه 00 نقوم بالضغط دبل كللك على الساعه (لاحظ الصوره ) سيظهر لك نافذة ضع الكود التالي
Label1.Caption = Time حسب الصوره ثم اغلق النافذه 0
http://bmw2003.jeeran.com/11.JPG
http://bmw2003.jeeran.com/11.JPG
اضغط على زر تشغيل
http://bmw2003.jeeran.com/12.JPG
http://bmw2003.jeeran.com/12.JPG
سيظهر البرنامج بشكله النهائى
http://bmw2003.jeeran.com/9.JPG
http://bmw2003.jeeran.com/9.JPG
وشكرا
انا خليت وصلت كل صوره متعمد الأن يمكن ما تطلع عندكم الصور ولو انك رحت على الصوره الي ماتطلع وسويت شو بكجر راح تطلع بس اعرف ان الكثير من الناس مايعرفون هذا الشىء
منقول للفائده

بومبه
06-11-2005, 10:00 AM
تاريخ الفيجوال بيسك

مفهوم كلمة البيسك بشكل عام

أصل كلمة بيسك من العبارة : Beginner’s All Purpose Symbolic Instructions Code

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


الفيجوال بيسيك هي لغة برمجة من اهم لغات الحاسب وكان اسمها أولا بيسك ، ثم طورت لتصبح فيجوال بيسك و هي لغة مرئية سهلة التعلم و بسيطة كل البسط و قوية و مشهورة أيضا و لا تحتاج إلا إلى بعض التفكير المنطقي . و إلى برنامج فجوال بيسيك - ( صدرت النسخة الأخيرة مع مجموعة من البرامج و اسم تلك البرامج فجوال ستيديو Microsoft Visual studio 6.0 ) - و لكن أنت لا تحتاج من تلك المجموعة من البرامج إلا إلى برنامج فجوال بيسيك , و إن كنت مبتدأ فتستطيع أن تجرب التطبيقات الأساسية في بريمج الفجوال بيسيك المرفق مع برامج مايكروسوفت أوفيس أو وورد لكنه جدا محدود ولكن مع ذلك يمكنك ان تكون منه فكرة جيدة الآن عرفت على الأقل ما هي لغة فجوال بيسيك و اما ماذا تعمل الفجوال بيسك فهذا ماسنقدمه لك إنشاء الله لتصبح مبرمجاً بلغة الفيجوال بيسك


أصل لغة فجوال بيسيك هى لغة بيسيك التي ظهرت في كلية دارتماوث Dartmaouth علي يد جون كيمني John Kemeny و توماس كيرتز Thomas Kurtz عام 1963م و قد أصبحت بسرعة فائقة من أشهر و أسهل لغات البرمجة بل لم تقف عند هذا فحسب فأصبحت كلغة تعليمية تدرٌس في المعاهد و الكليات و الجامعات و بدأ انتشارها في السبعينات
ثم أخذت هذه اللغة في التطور الدائم مع المحافظة على سهولة استخدامها و بساطتها و كان الإصدار الأول لهذه اللغة عام 1991 م ثم كان الإصدار الثاني منها عام 1992 م
ثم كان الإصدار الثالث عام 1993 ومن ذلك الوقت تعاقبت اصدارات كثيرة منها ، و آخرها الإصدار السادس ( فجوال بيسيك 6.0 ) (Visual Basic 6.0) وهو مع مجموعة من اصدارات شركة مايكروسوفت التي اسمته الان ( فجوال ستديو 6.0 ) (Visual Studio 6.0)

وصدر الأن إصدار فيجوال بيسك . نت وهو سبب عقدة نفسية لمبرمجي الفيجوال بيسك

بومبه
06-11-2005, 10:01 AM
بنية الفيجوال بيسك

تتكون لغة الفيجوال بيسك من مجموعة من التعليمات مكتوبة في أسطر وتعليمة الفيجوال بيسك تتكون من :

1- الكلمات المحجوزة للفيجوال للبيسك والخاصة بتعليمة معينة : مثلاً End و If وFor

2- المحارف والمتحولات والثوابت:

أولا_ المحارف

تستخدم لغة البيسك ثلاثة أنواع من المحارف هي:

أ - الأحرف الأنكليزية الصغيرة والكبيرة

ب - الأرقام من 0 الى 9

ج - محارف خاصة متعددة الأنواع :

- إشارات العمليات الحسابية : مثل: ^ / - + * . حيث أن الإشارة * ترمز إلى الضرب و الإشارة / ترمز إلى القسمة

و^ ترمز إلى رفع القيمة إلى س

- معملات الموازنة وهي : <> => > <= < = أصغر أو يساوي والإشارة <> تدل على عدم المساواة

- علامات الترقيم وهي الفاصلة والفاصلة المنقوطة والنقطة والنقطتان فوق بعضهما وإشارة الإسفهام وإشارة التعجب والفراغ والأقواس وعلامات التنصيص

- رموز أخرى مثل $ وإشارة النسبة % وإشارة العطف & ورمز الإعداد # والشحطة _ و@ والخط المائل \



ثانياً - الثوابت Constants

الثابت قيمة تستخدم في البرنامج دون أن يطرأ عليه أي تغيير خلال تنفيذه وهي على نوعين :

1 - ثابت عددي وهذه القيمة تقسم إلى نوعين :

أ - ثابت عددي صحيح INTEGER

ب - ثابت عددي حقيقي REAL : وله شكلان

- شكل عشري : مثل 15.25

- شكل أسي : مثل E3 2.5

2 - ثابت محرفي STRING :

وهو تابع لمحارف مكتوبة بين علامتي التنصيص " " لا يستخدم الثابت المحرفي في العمليات الحسابية وإنما يعامله الكمبيوتر كنص

مثلاً لو أدخلنا التعليمة Print 2*3 فإنه سوف يظهر ناتج ضرب العددين أي 5

فإنه سوف يظهر الرقمان كما هما 3*2 Print "2*3" أما لوأدخلنا التعليمة



ثالثاً - المتحولات VARIABLES

المتحول هو رمز لمكان في الذاكرة الرئيسية تخزن فيه قيمة معينة ويجب أن يبدأ بحرف أبجدي ويمكن أن يتكون من عدد من المحارف يمكن أن يصل إلى 40 محرفاً

يحوي أحرف وأرقام ونقطة عشرية ولايجوز أن يحوي على فراغ ويمكن أن تتغير قيمته خلال عمل البرنامج وهو على نوعين هما:

1 - متحول عددي : تخزن فيه قيم عددية فقط

2 - متحول محرفي : وهو إسم محرفي يتبعه بالمحرف $

بومبه
06-11-2005, 10:03 AM
هذه الواجهه سوف تظهر عند بدء تشغيل الفيجوال بيسك وفي الأسفل شرح لها.

يمكنك إزالتها من بدء التشغيل عن طريق تفعيل علامة الإختيار Dont't Show this dialog in the future

http://www.bwady.com/droos/visualbasic/les1/vb1.bmp
علامات التبيويب في أعلى الواجهة:

New : وتعني إختيار مشروع جديد

Existing : فتح ملفات مخزنة لديك .

Recent : قائمة بآخر الملفات التي قمت بفتحها حسب التاريخ



New يضم مايلي

Standard EXE : وهو يقوم بإنشاء برنامج تنفيذي بعد طلبك لذلك من ( Make EXE) في قائمة ( File ) .

Activex EXE : وهو أيضاً يقوم بإنشاء ملفاً له الامتداد ( DLL ) وهو ملف ذو برامج فرعيه مساعدة و هو لا يعمل بنفسه بل مع exe .

Activex DLL : وهو ينشئ ملفات لها امتداد EXE تعمل مع برامج إخرى لكي يعمل في شكل ( OLE ) .

Activex control : وهو يساعد على إنشاء ملف من نوع ( ocx ) و هي مهمة وتساعد على إحتواء واجهة مستخدم أو برامج فرعية .

Activex Document DLL : وهو يساعد على إنشاء ملف ذو امتداد ( DLL ) يقوم بتشغيل برامج على موقع في الانترنت .

Activex Document exe : يقوم بإنشاء ملفات تظهر على الانترنت .

Add In : وهو خاص بالفيجوال بيسك حيث يمكنك إضافة واجهة مع ما ذكر سابقاً خاصة بك .

VB Application Wizard : وهو معالج تلقائي في هذه اللغة يساعدك على إنشاء نوافذ عدة دون كتابة سطر واحد من النوع ( exe ) .

ISS Aplication : نقصد بـ ( ISS ) إختصار لكلمة ( Internet Information Server ) و يقوم بالتحضير لتصميم ( web class ) وهو ما يسميه المستخدم صفحات ( HTML ) .

Data project : تضع مشروعاً لقواعد بيانات وتهيئة في بيئة متكاملة من أدوات الربط وصنع التقارير دون الحاجة لفتح برامج أخرى .

Vb wizard manager : و تبدو مشابهة لمعالجات ( Microsoft ) يمكنك إستخدامه .

DHTML Application : تسهل عليك صنع صفحات ( HTML ) ديناميكية للإنترنت دون تعلم لغة Java .

Vb Enterprise Edition controls : وهي تساعد على وضع جميع الأدوات المستخدمة بكثرة لقواعد البيانات و الاتصال ومن ثم تطبيقها وهي للمحترفين .



http://www.bwady.com/droos/visualbasic/les1/vb.bmp
1. شجرة المشروع : ويقوم بعرض جميع المشاريع و النماذج للمشروع الحالي .
http://www.bwady.com/droos/visualbasic/les1/ProjectWindow.jpg

2. شريط القوائم : وبه قائمة الملف و التحرير و المشروع و التنسيق و متابع الاخطاء و التشغيل و كذلك الأدوات و الاضافة و النافذة وقائمة المساعدة .
3. نافذة البرنامج : و هي النافذة النشطة و التي تكون عاملاً عليها مثل ( Form1 ) .
4. نافذة الخصائص : وتظهر بها خصائص النموذج المفتوح حالياً وبها تنسيق لون الخلف والامام و الحجم و الموقع و الرؤية و التمكين وغيرها حسب كل أداة .
5. نافذة الأدوات : وهي تكون على يسار الواجهة وهي قد تكون نص أو عنوان أو صورة أو مؤقت وغيرها كثير جداً ما عليك إلا الضغط على الأداة و من ثم رسمها على نافذة البرنامج .

6. شريط الأدوات ( Toolbar ) :- وتعرض بها الأوامر التي تستخدم في الفيجوال بيسك بكثرة مثل القص و اللصق و التشغيل و غير ذلك .



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


1- الوظائف ( Functions ) .
2- الطرق أو الوسائل ( Methods )
3- الأحداث ( Events )
4- مفاتيح المهام (Keywords by Task )
5- الخصائص ( Properties )
6- التعبيرات ( Statements )
7- الكائنات ( Objects )

بومبه
06-11-2005, 10:07 AM
شكل الفورم والتعامل معه

النموذج ( الفورم ) و هو عبارة عن نافذة أو هو عبارة عن نموذج فارغ و هو الذي نكوّن و نضع عليه الرسوم و الصور و الأزرار و عناصر الإدخال و الإخراج و غير ذلك و الذي سيكون واجهة برنامجك الذي ستصنعه .

وهو حقيقة يشبه لوحة رسم لأنك تستطيع الرسم عليه بسهولة كما يمكنك تغيير حجمه و لونه و أطرافه , كما تستطيع تغيير عنوانه و سنرى كل ذلك بإذن الله تعالى.

http://www.bwady.com/droos/visualbasic/les1/form.gif
شكل الفورم

ملاحظة : الفورم السابق هو نتيجة إختيارنا في البداية لـ standar.exe .

هذا يعني أن هذا الفورم هو الفورم الإفتراضي .

* كيف نغير عنوان الفورم من كلمة form1 إلى العنوان الذي نريده ؟

حسنا هذا ليس صعبا على الاطلاق ... انقر فوق الفورم نقرة واحدة ( لتحدده أو تختاره ) , ثم اذهب لمربع الخصائص أو نافذة الخصائص properties window ( موقعه على يمين الشاشة ) إذا كان غير ظاهر على واجهة البرنامج إذهب إلى شريط الأدوات و انقر على الزر
http://www.bwady.com/droos/visualbasic/les1/wp.gif عندها تظهر نافذة الخصائص اختر caption و اكتب : " النموذج الأول "
http://www.bwady.com/droos/visualbasic/les1/caption.gif
نافذة الخصائص
و للتعرف اكثر عن خصائص هذه النافذة
http://www.bwady.com/droos/visualbasic/les1/first.gif
تغير عنوان الفورم انظر فوق




ملاحظة : نافذة الخصائص تخصص جميع العناصر الموجودة على الفورم كالأزرار و عناصر الادخال و الإخراج إلخ ......


الآن أعرف أنك تود أن تسأل عن كيفية وضع العنوان على اليمين

الأمر أسهل مما تتوقع .....

في نافذة الخصائص السابقة ابحث عن rigth to left يظهر سهم منسدل للأسفل انقرعليه وستلاحظ أن لهذه الخاصية قيمتان fals و true حيث fals هي الإفتراضية غيرها أنت إلى true .

http://www.bwady.com/droos/visualbasic/les1/first1.gif
لقد تغير عنوان الفورم من اليسار إلى اليمين



ماذا تلاحظ الآن تغيرت و أصبحت من اليمين إلى اليسار أليس كذلك ..

لقد نجحت مرة أخرى هنيئا لك .......

كيف تغير حجم الفورم ؟

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

و هناك طريقة أخرى لتغيير حجم الفورم ...إذهب إلى نافذة الخصائص انقر فوق السهم المتجه نحو الأسفل في عمود الإنزلاق الموجود على يمين نافذة الخصائص و ابحث عن خاصية العرض Width و خاصية الطول Heigth و غير إلى المقاس الذي تريده بالتحديد .... االعملية سهلة للغاية.

كيف تغير إطار الفورم برز إغلاق فقط أو بدون أزرار من فوق؟

في مربع الخصائص سوف تجد الخاصية Border Style أنقر فوق السهم للأسفل لعرض خيارات وتغيير شكل الفورم. أنظر إلى الصورة التالية:

http://www.bwady.com/droos/visualbasic/les1/style.GIF
هذا الجدول يبين شرح خصائص الفورم:

معناها
اسم الخاصية

اسم الفورم
Name
الظهور
Appearance

لون الخلفية
BackColor

نمط الإطار
BorderStyle

التصحيح
CauseValidation

العنوان
Caption
إظهار وإخفاء الأزرار العلوية
ControlBox
الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
البعد عن الحافة اليسرى
Left

الإرتفاع Height
أيقونة الفورم Icon
تفعيل وإلغاء زر التكبير
MaxButton

فورم يعمل داخل النافذة الأم
MDIChild

تفعيل وإلغاء زر التصغير
MinButton

الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
قابل للحركة MoveAble
صورة الخلفية Picture
موضع الفورم على الشاشة StartUpPosition
إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

النص
Caption

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض Width
حجم الفورم عن التشغيل
WindowsStat

بومبه
06-11-2005, 10:08 AM
شرح صندوق كتابة الشيفرة والأحداث




صندوق الشيفرة هو الذي يتم كتابة الكود الخاص بأي عمل بداخله وهو الذي يحوي التصريحات والأحداث

تستطيع فتحة عن طريق الضغط نقرتين فوق الأداة. أو عن طريق http://www.bwady.com/droos/visualbasic/les1/codeviw.JPG الموجود على شجرة المشروع.

هذا هو شكله

http://www.bwady.com/droos/visualbasic/les1/code.JPG


شرح صندوق كتابة الشيفرة والأحداث




صندوق الشيفرة هو الذي يتم كتابة الكود الخاص بأي عمل بداخله وهو الذي يحوي التصريحات والأحداث

تستطيع فتحة عن طريق الضغط نقرتين فوق الأداة. أو عن طريق الموجود على شجرة المشروع.

هذا هو شكله



لكتابة الكود الخاص بأي أمر أنقر فوق الأداة التي تحوي حدث نقرتين فيفتح لك صندوق الشيفرة . ويجهز سطراً للكتابة .

لتغيير الحدث مثلاً عند ضغط مفتاح أو عند التحريك أنقر فوق القائمة على اليمن لعرض كافة الأحداث للأداة المحددة.

فمثلاً السطرين في الصورة السابقة هما نتيجة للنقر المزدوج فوق الفورم وهو حدث التحميل Load نكتب الكود بينهما

ولو أردنا الحدث أن يحصل عند النقر فوق الفورم إنتقل إلى القائمة اليمينية وإختر حدث Click من القائمة فيظهر لك السطران التاليان:

Private Sub Form_Click()

End Sub

الكود يكتب بينهما

وهكذا نلاحظ في كل أداة لو وضعت زر أمر Command1 فهكذا سوف يكون :

Private Sub Command1_Click()

End Sub

لاحظ كيفة صياغة سطر الحدث في كل مرة إسم الإداة _ الحدث

ودائماً ينتهي احدث لأي أداة بEnd Sub إلا في حالات خاصة كالتعاريف

ويسمح لك صندوق الشيفرة بالنسخ والقص والصق

ويمكنك كتابة أسطر للمراجعة أي دون ان يكون لها أي عمل عن طريق وضع الفاصلة العلوية (') أو التعليمة rem قبل كتابة السطر الذي تريد وضعه دون حدث.

هذا كان درسنا أدعوا لنا بالتوفيق

بومبه
06-11-2005, 10:14 AM
محتويات هذا الدرس : معنى الخصائص ، ضبط الخصائص ، الخصائص المشتركه



: معنى الخصائص

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

BackColor وهي تحدد لون الخلفية للنافذة BackColor وهي تحدد اسم الخط المستخدم وخاصية FontName

أو الأداة
ويوجد خصائص كثيرة في كل أداة من الأدوات



وعندما تضع أداة على نافذة البرنامج فإن فيجول بيسيك يضع قيماً افتراضية لخصائصها . فإذا لم تعجبك هذه القيم الافتراضية فإنه يمكنك أن تغيرها وتضع لها قيمـاً جديدة



للأدوات التي لها عنوان مثل أزرار الأوامر فإذا لم يعجبك ms sans serif فمثلاً : يختار فيجول بيسيك خط

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




: ضبط الخصائص

هناك طريقتان لضبط الخصائص

الاولى : اثناء تصميم البرنامج

الثانيه : اثناء تشغيله



ضبط الخصائص أثناء تصميم البرنامج

كما ذكرنا في المحاضرات السابقة يتم ضبط الخصائص أثناء تصميم البرنامج باستخدام نافذة الخصائص

وهناك ثلاثة خطوات تمر بها عملية تغيير الخصائص : هي propertie window

الاول : تحديد الأداة التي تريد ضبط خصائصهايمكنك تحديد أكثر من أداة

الثانيه : تحديد الخاصية التي تريد تغييرها

الثالثه : إدخال القيمة الجديدة

لإظهارها F4 إذا لم تكن نافذة الخصائص ظاهرة على الشاشة اضغط مفتاح



: نافذة الخصائص تنقسم إلى ثلاثة أقسام : خانة الأداة وخانة إدخال القيمة وقائمة بالخصائص

خانة الأداة :تعرض هذه الخانة اسم الأداة النشطة ونوعها . إذا كنت تريد أن تعدل خصائص أداة أخرى غير تلك المعروضة في هذه الخانة فهناك طريقتان

ثم تنقر فوق الأداة المطلوبة FORM1 الاولى : أن تنتقل إلى نافذة البرنامج

الثانيه : أن تضغط السهم الموجود في يمين خانة الأداة . عندها سيعرض لك فيجول بيسيك قائمة بكل الأدوات الموجودة فوق النافذة لتختار أحدها. انقر فوق الأداة المطلوبة



خانة إدخال القيمة

تستخدم هذه الخانة لإدخال القيمة الجديدة للخاصية التي حددتها في قائمة الخصائص
: لاحظ أن الزر الموجود في يمين خانة إدخال له ثلاثة أشكال وهي


http://www.bwady.com/droos/visualbasic/picc/image004.jpg
معناه انك لن تضطر إلى كتابة القيمة بنفسك وإنما يمكنك اختيارها من قائمة سيعرضها لك فيجول بيسيك عند النقر على السهم مثل خاصية الخط
http://www.bwady.com/droos/visualbasic/picc/image005.jpg
BACKCOLOR معناه أنه يمكنك أن تختار قيمة الخاصية الحالية من مربع حوار فمثلا عند تغيير خاصية

سيظهر الزر في يمين خانة إدخال القيمة انقر عليه سيظهر مربع حوار يحتوي على الألوان الموجودة في ويندوز . انقر فوق لون لتختاره

http://www.bwady.com/droos/visualbasic/picc/image009.jpg
وهو مثل الشكل الأول ولكنة خافت وهذا معناه أن فيجول بيسيك ليس لديه اختيارات للخاصية الحالية وأنك يجب أن تدخل قيمتها بالكتابة مثل خاصية

التي تحدد موقع الأداة أفقيا Left التي تحدد خاصية العنوان أو Caption
التي تحدد موقع الأداة رأسيـاً فـ فيجول بيسيك ليس لديه خيارات لهذه الخصائص وإنما يجب أن تدخلها بنفسك Top او



ضبط الخصائص أثناء تشغيل البرنامج


التي تحدد القرص الحالي Drive هناك بعض الخصائص التي لا تكون متاحة إلا عند تشغيل البرنامج مثل خاصية

التي تحدد المسار لأداة الأدلة path في أداة الأقراص أو خاصية



وحتى ولو كانت الخاصية متوفرة أثناء تصميم البرنامج فمن الممكن أن تحتاج إلى تغيرها أثناء تشغيل البرنامج

التي تحدد لون الخلفية متوفرة أثناء backcolor فمثلا خاصية

تصميم البرنامج ولكن من الممكن أن تحتاج إلى تغييرها أثناء تشغيل البرنامج



فمثلا عندما تريد أن تُغير لون خلفية نافذة البرنامج بناءاً على رغبة المستخدم فإنك تعرض على المستخدم لوحة بالألوان المتاحة وتترك له الاختيار ثم تقوم بتغيير لون الخلفية بناءاً على رغبته وهذه عملية لايمكن أن تتم أثناء تصميم البرنامج
فكيف إذا نغير الخصائص أثناء تشغيل البرنامج ؟
: ولتغيير الخصائص أثناء عمل البرنامج اتبع الصيغة التالية



القيمة الجديدة = اسم الخاصية . الأداة

cotrolName.propertyName = New Value



وهذا يعني تكتب اسم الاداة التي ترغب في تغيير خصائصها ثم تضع بعدها نقطة

(.)

ثم اسم الخاصية التي ترغب في تغيير قيمتها ثم علامة يساوي

(=)

ثم القيمة الجديدة للخاصية

بومبه
06-11-2005, 10:22 AM
شرح صندوق الأدوات

أنقر فوق صورة الأداة لتعرف كيفية التعامل معها


http://www.bwady.com/droos/visualbasic/toolbox/picbox.JPG Picture Box صندوق عرض الصور
http://www.bwady.com/droos/visualbasic/toolbox/text.JPG Text Box أداة النصوص والكتابة
http://www.bwady.com/droos/visualbasic/toolbox/label.JPG Label أداة عرض النصوص
http://www.bwady.com/droos/visualbasic/toolbox/form.JPG Frame إطارات داخل البرنامج
http://www.bwady.com/droos/visualbasic/toolbox/chec.JPG Check Box زر إختيار
http://www.bwady.com/droos/visualbasic/toolbox/combo.JPG Combo Box قائمة منسدلة
http://www.bwady.com/droos/visualbasic/toolbox/command.JPG Command Button زر أمر
http://www.bwady.com/droos/visualbasic/toolbox/data.JPG Data Control ربط قاعدة بيانات
http://www.bwady.com/droos/visualbasic/toolbox/deiver.JPG Drive Box أداة عرض السواقات
http://www.bwady.com/droos/visualbasic/toolbox/dir.JPG Dir Box أداة عرض المجلدات
http://www.bwady.com/droos/visualbasic/toolbox/file.JPG File Box أداة عرض الملفات
http://www.bwady.com/droos/visualbasic/toolbox/image.JPG Image أداة الصور
http://www.bwady.com/droos/visualbasic/toolbox/list.JPG List Box أدة القائمة
http://www.bwady.com/droos/visualbasic/toolbox/line.JPG Line خط
http://www.bwady.com/droos/visualbasic/toolbox/ole.JPG Ole Object عنصر تحكم Ole
http://www.bwady.com/droos/visualbasic/toolbox/rido.JPG Option Box زر خيارات
http://www.bwady.com/droos/visualbasic/toolbox/scrol.JPG Vertical Scroll Bar شريط التمرير العمودي
http://www.bwady.com/droos/visualbasic/toolbox/scrol1.JPG Horizontal Scroll Bar أشرطة التمرير الأفقي
http://www.bwady.com/droos/visualbasic/toolbox/shnab.JPG Shape أداة الأشكال
http://www.bwady.com/droos/visualbasic/toolbox/timer.JPG Timer أداة التوقيت

بومبه
06-11-2005, 10:26 AM
عمل برنامج Setup

طريقة صنع Setup هامة بعد الإنتهاء من تصميم برنامج فإذا أردت نقل البرنامج لوحده دون ان تضعه في Setup فلن يعمل على جهاز أخر

لأن له ملفات نظام تساعده على عمله فعليك تشغيل معالج الحزم وصنع برنامج Setup لأنه يحفظ كافة الملفات التي يحتاجها برنامجك للعمل

هذا البرنامج package & deployment wizard تجده مع أدوات فيجوال بيسك 6

وهذه خطوات العمل محددة بمستطيل أحمر :

أولاً عليك النقر فوق زر Browser لتحديد مشروعك طبعاً بعد الإنتهاء من تصميمه. ثم أنقر فوق الزر Package لبدء العمل

طبعاً تأكد من أنك عملته برنامج تنفيذي exe لأن برنامج الحزم إذا لم يعثر على برنامج تنفيذي سيخبرك وينشء برنامج تنفيذي

http://www.bwady.com/droos/visualbasic/setup/vb10_1.jpg
مانوع الحزمة التي تريدها. تبقيها عى Standard وتضغط Next

http://www.bwady.com/droos/visualbasic/setup/vb10_3.jpg
تحديد مسار حفظ برنامج التنصيب Setup أدخل قرص مرن أوغير المسار عن طريق النقر فوق New Folder

http://www.bwady.com/droos/visualbasic/setup/vb10_4.jpg
تحديد الملفات التي سوف يتم حزمها . هذه الملفات الأساسية يضعها البرنامج تلقائيا وإذا كنت ترغب في إضافة ملفات أنقر فوق الزر Add

http://www.bwady.com/droos/visualbasic/setup/vb10_5.jpg
خيارات برنامج التنصيب . هل تريده جزاُ واحدة أومجزء إلى عدة أقسام أنت تحدد حجم القسم

http://www.bwady.com/droos/visualbasic/setup/vb10_6.jpg
ماالعنوان الذي سوف يظهر في خلفية برنامج التنصيب

http://www.bwady.com/droos/visualbasic/setup/vb10_7.jpg
أين تريد وضعه في قائمة "إبدء" يمكنك إنشاء مجلد لبرنامج عن طريق New Group

http://www.bwady.com/droos/visualbasic/setup/vb10_8.jpg
http://www.bwady.com/droos/visualbasic/setup/vb10_9.jpg
الدليل الذي سوف يذهب إليه البرنامج

http://www.bwady.com/droos/visualbasic/setup/vb10_11.jpg
إسم الحزمة التالية

http://www.bwady.com/droos/visualbasic/setup/vb10_12.jpg
أرجو أن أكون قد حققت الفائدة المرجوة .

أحب أن أذكر أن هناك برامج أخرى لصنع برامج التنصيب منها Install Shild البرنامج القوي لصنع برامج التنصيب والتعامل مع ملفات الفيجوال بيسك

ومعظم البرامج الضخمة الي تنصبها على جهازك هي تم حزمها عن طريق هذا البرنامج

وهناك أيضا Setup Factoy برنامج سهل الإستخدام وقوي وسريع وهو يدعم مشاريع الفيجوال بيسك

بومبه
06-11-2005, 10:28 AM
التعامل مع النماذج



لقد قمنا سابقاً بشرح واجهة الفورم والأن سوف نتوسع بالتعامل معه مثلاً لو كان لديك عدة فورمات في برنامجك كيف ستظهر وتغلق النماذج .

أولاً بعد فتح الفيجوال بيسك وتجهيز الفورم الأول سوف يكون إسمه بالأساس Form1 غير خاصية Caption أي العنوان إلى "النموذج الأول"



http://www.bwady.com/droos/visualbasic/les1/caption.gif
أضف إلى الفورم زرين أمر وغير خاصية Caption لكل منهما
http://www.bwady.com/droos/visualbasic/les2/form.JPG
ثم أضف فورم ثاني Form2 وغير Caption إلى "النموذج الثاني"

أضف إلى الفورم الثاني زر أمر "عودة للنموذج الأول"

http://www.bwady.com/droos/visualbasic/les2/form2.JPG


الأن سوف نبدأ بالعمل:

في الفورم الأول "النموذج الأول" أنقر فوق الزر "إظهار النموذج الثاني " نقرتان لفتح المكان المخصص لكتابة الشيفرة

أكتب الشيفرة التالية :

Unload Me

Form2.Show

السطر الأول يعني إغلاق الفورم الحالي أي "النموذج الأول"

السطر الثاني يعني إظهار الفورم الثاني الذي إسمه Form2



وفي الفورم الثاني أنقر فوق الزر "عودة للنموذج الأول " نقرتان وأكتب نفس الكود السابق ولاكن عليك تبديل Form2 إلى Form1

إذاً نستنتج أن شفرة إغلاق فورم لوحده هي Unload Me أو Form1.Hide إستبدل Form1 بإسم الفورم الذي تريد إخفائه



الأن عد إلى الفورم الأول وأنقر نقرتان فوق الزر " إغلاق البرنامج " وأكتب التعليمة التالية:

End

وهي تقوم بإغلاق كافة البرنامج أي كافة النماذج الموجودة

إذا تعليمة إغلاق نموذج واحد هي Unload Me

وتعليمة إغلاق كافة البرنامج هي End



هذا بالنسبة للإظهار والإغلاق . هناك تصغير الفورم عن طريق النقر فوق زر

أضف إلى أحد الفورمات السابقة زر أمر قم بستميته "تصغير"

أكتب التعليم التالية:

Form1.WindowState = 1

لاحظ أن WindowsState هي خاصية من خصائص الفورم ولها ثلاث خيارات

0 - Normal الوضع العادي

1 - Minimized أصغر حجم

2- Maximized أكبر حجم

في التعليمة السابقة لو وضعت رقم 2 فإن النموذج سوف يكبر إلى ملىء الشاشة



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

بومبه
06-11-2005, 10:30 AM
التعامل مع Label و Text

أولا التعامل مع الأداة Label
http://www.bwady.com/droos/visualbasic/les2/labell.JPG
تستخدم الأداة Label لإظهار النصوص على النموذج . دون أن تتمكن من الكتابة فيها
http://www.bwady.com/droos/visualbasic/les2/label.JPG


لتغير النص الذي سيظهر بداخلها طبعاً عن طريق Caption

وهذا الجدول يبين الخصائص الأساسية Label

معناها
اسم الخاصية

اسم الأداة
Name
محاذاة
Aignment

الظهور
Appearance

حجم تلقائي حسب النص
AutoSize
لون الخلفية
BackColor

نمط الإطار
BorderStyle

النص
Caption
الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

النص
Caption

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width

التعامل مع TextBox http://www.bwady.com/droos/visualbasic/les2/textt.JPG
أداة TextBox تستخدم في إدخال النصوص إلي البرنامج كما يمكن إستخدامها في إخراج النصوص.

وهي لاتختلف كثيراً عن Label سوى أنها يمكن الكتابة فيها أما Label فلا يمكن

http://www.bwady.com/droos/visualbasic/les2/text.JPG
وهذا جدول الخصائص الأساسية لTextBox

معناها
اسم الخاصية

اسم الأداة
Name
محاذاة
Aignment

الظهور
Appearance

حجم تلقائي حسب النص
AutoSize
لون الخلفية
BackColor

نمط الإطار
BorderStyle

التصحيح
CauseValidation

النص
Text
مقفول لا يمكن الكتابة بداخلها
Locked

الحد الأقصى
MaxLength

الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
حرف كلمة المرور
PasswordChar

هل تستخدم لعدة أسطر أم لا
MultiLine

أشرطة التمرير
ScrollBars

الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

النص
Caption

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width





إن التعامل مع هاتين الأداتين ليس صعباً عليك فهم صندوق الخصائص فتعرف كيف تتعامل مع كافة الأدوات

بومبه
06-11-2005, 10:33 AM
التعامل مع Picture Box و Image Box

صندوق الصور PictureBoxhttp://www.bwady.com/droos/visualbasic/les2/picbox.JPG
يستخدم هذا الصندوق لعرض الصور بحجمها الطبيعي وله إستخدات أخرى كثيرة فهو يستخدم كإطار لأدوات تحكم أخرى

وهو أيضاً يستخدم لعرض الفيديو ويستخدم للرسم والإنشاء ويمكن تحويله إلى أداة عرض نصوص وزر أمر سوف نتحدث عن ذلك لاحقاً.

لوضع صورة : من مربع الخصائص الخاص ب Picture سوف تجد الخاصية Picture أنقر فوق الزر لتحديد صورة .

أو عن طريق الكود التالي في حدث Load للفورم :

Picture1.Picture=LoadPicture (ضع عنوان الصورة هنا)



يمتاز صندوق الصور Picture عن صندوق عرض الصور Image بمايلي:

يعرض الصورة بحجمها الطبيعي ولو صغرت إطار الصندوق فلن تصغر الصورة. بعكس Image

يمكن تغيير لون الخلفية ونمط الإطار أماImage لا

يستخدم في أغراض كثيرة أما Image لعرض الصور فقط

هذا شكل الأداة على الفورم

http://www.bwady.com/droos/visualbasic/les2/p.JPG
هذه الخصائص الأساسية ل Picture Box قارن بينها وبين خصائص Text:

معناها
اسم الخاصية

اسم الأداة
Name
محاذاة
Aignment

نوع الإطار
Appearance

حجم تلقائي حسب الصورة
AutoSize
لون الخلفية
BackColor

نمط الإطار
BorderStyle

النص
Caption
الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
الإرتفاع
Height
ترتيب مفتاح Tab
Index
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الصورة
Picture
الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

النص
Caption

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width


صندوق الصورة Image Box:

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

لوضع صورة : من مربع الخصائص الخاص بImage سوف تجد الخاصية Picture أنقر فوق الزر لتحديد صورة .

أو عن طريق الكود التالي في حدث Load للفورم :

Image1.Picture=LoadPicture (ضع عنوان الصورة هنا)

لتغير حجم الصورة هناك خاصية تحت خاصية Picture إسمها Stretchعليك تبديلها إلى True

هذا شكل الImage على الفورم لاحظ حجم الصورة الطبيعي في أعلى الصفحة ولاحظ هنا.

http://www.bwady.com/droos/visualbasic/les2/i.JPG
وهذا جدول الخصائص الأساسية ل Image

معناها
اسم الخاصية

اسم الأداة
Name
محاذاة
Aignment

نوع الإطار
BorderStyle
الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
الإرتفاع
Height
ترتيب مفتاح Tab
Index
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الصورة
Picture
السماح بتغيير حجم الصورة
Stretch

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width


نهاية الدرس

بومبه
06-11-2005, 10:34 AM
التعامل مع زر الأمر Command Button



زر الأمر هو من الأدوات المهمة في الفيجوال بيسك وإذا عملت أي برنامج فسوف تحتاج بالتأكيد إلى وضع زر أمر في برنامجك

فهو الأداة الأساسية للأحداث

http://www.bwady.com/droos/visualbasic/les2/command.JPG


لكتابة أي حدث في الزر أنقر فوقه نقرتين ثم أكتب الشيفرة التي تريد

لتغيير النص الذي سيظهر في الزر طبعاً تعرفها في خاصية Caption أكتب التسمية.

ويمكنك أيضاً إضافة صورة إلى الزر ويمكنك تغير اللون . ولاكن عليك أن تبدل خاصية الستايل Style إلى Graphical

ويمكن أن يستخدم الزر ليعمل أكثر من حدث في نفس الوقت في Click و MouseDown و MouseUp



هذه الخواص الأساسية للزر

معناها
اسم الخاصية

اسم الأداة
Name
الظهور
Appearance

لون الخلفية
BackColor

النص
Caption
زر إفتراضي عند ضغط مفتاح الإدخال
Default
الصورة عندما يكون غير متاح
DisablePicture
الصورة عند الضغط لأسفل
DownPicture
الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
قناع اللون
MaskColore
النمط
Style
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

الصورة في الوضع العادي
Picture

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width

بومبه
06-11-2005, 10:35 AM
التعامل معCheck Box و Option

ربما تقول إنه لافرق بين هاتين الأداتين إلا بالشكل ولاكن هذا الفرق بينهما :

مثلاً لو كان لديك فورم ووضعت فيه أكثر من خانة إختيار Check فإنك تستطيع أن تحدد كافة الخانات الموجودةعلى الفورم مع بعضها.

أما لوكان لديك أكرثر من زر خيار Option فلن تستطيع سوى أن تحدد واحداً منها . وهذا هو الفرق بين زر الخيار وخانة الإختيار



إن النص الذي بجانب كل أداة هو تابع لها يمكنك تغييره عن طريق خاصية Caption وعند النقر عليه تتغير قيمة الأداة
http://www.bwady.com/droos/visualbasic/les2/co.JPG
وعليك أن تعرف أن هنا نمطان لكل أداة أنظر الشكل في السفل

http://www.bwady.com/droos/visualbasic/les2/co2.JPG


تم تغيير النمط عن طريق خاصية Style إلى Graphical

ولاحظ كيف تمكنا من تحديد خانتي الإختيار بينما لم نحدد سو زر خيار واحد.

لتغيير القيمة الإفتراضية لكل أداة من خاصية Value في مربع الخصائص



وللاداتين نفس الخصائص وهذا جدول للخصائص الأساسية:



معناها
اسم الخاصية

اسم الأداة
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


نهاية الدرس

بومبه
06-11-2005, 10:37 AM
التعامل مع أشرطة التمرير

أشرطة التمرير تستخدم لتغيير القيمة زيادة أو نقصان سوف نأخذ مثالاً لهذه الأداة أفضل من الشرح .

لهذه الأداة نوعان :

شريط تمرير أفقي : HScroll

شريط تمرير عمودي : VScroll



بعد تجهيز الفورم أضف إليه ثلاث أشرطة تمرير إما أفقي أو عمودي . لنفرض أنك وضعت أشرطة أفقية HScroll .

أسمائها على التتالي: HScroll3 HScroll2 HScroll1

ثم أضف إلى الفورم صندوق الصورة Picture1

ولاتنسى الأدوات Label والتي تعني النصوص التي بجانب كل شريط تمرير

http://www.bwady.com/droos/visualbasic/les2/scrol.GIF
أنقر فوق الفورم نقرتين وأضف الكود التالي في حدث Load :

HScroll1.Min = 0
HScroll1.Max = 250
HScroll1.SmallChange = 30
HScroll1.LargeChange = 50

HScroll2.Min = 0
HScroll2.Max = 250
HScroll2.SmallChange = 30
HScroll2.LargeChange = 50

HScroll3.Min = 0
HScroll3.Max = 250
HScroll3.SmallChange = 30
HScroll3.LargeChange = 50
رح الأسطر السابقة : وتعني تحديد القيمة الصغرى والكبرى لأشرطة التمرير وتحديد سرعة التمرير>



أضف الكود التالي إلى شريط التمرير الأول:

Picture1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)

الكود التالي للشريط الثاني:

Picture1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)

الكود التالي للشريط الثالث :

Picture1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)




بعد تشغيل البرنامج جرب تبديل أشرطة التمرير ولاحظ الحدث


http://www.bwady.com/droos/visualbasic/les2/scrol1.GIF
هذا الجدول يبين الخصائص الأساسية لأشرطة التمرير

معناها
اسم الخاصية

اسم الأداة
Name
الفاعلية
Enabled

قيمة التبديل الكبرى
LargeChange
الحد الأقصى
Max
الحد الأدنى
Min
قيمة التبديل الصغرى
SmallChange
القيمة الإفتراضية
Value
البعد عن الحافة اليسرى
Left

مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ما سيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width


أمل أن يكون الدرس مفهوماً

بومبه
06-11-2005, 10:40 AM
التعامل مع أدوات عرض الملفات

أدوات عرض الملفات هي ثلاث:

http://www.bwady.com/droos/visualbasic/les2/deiver.JPG صندوق عرض محركات الأقراص DriverList Box
http://www.bwady.com/droos/visualbasic/les2/dir.JPG صندوق عرض المجلدات DirList Box
http://www.bwady.com/droos/visualbasic/les2/file.JPG صندوق عرض الملفات FileList Box


وهذه الأدوات يجب أن تكون مترابطة ببعضها .

لنعمل نموذج بسيط لتعرف كيف تربطها ببعضها:

بعد تجهيزك للفورم أضف إليه الأدوات السابقة . وأضف أدوات النصوص Label كالشكل التالي:

http://www.bwady.com/droos/visualbasic/les2/ddf.JPG
أنقر نقرتين فوق صندوق محركات الأقراص Drive1 وأكتب:

On Error Resume Next
Dir1 = Drive1

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

في السطر الثاني عرض المجلدات داخل محرك الأقراص الذي تم تحديده

أنقر فوق صندوق المجلدات Dir1 وأكتب :

File1 = Dir1
Label4 = Dir1

السطر الأول: عرض الملفات التي داخل هذا المجلد (في صندوق الملفات File1)

السطر الثاني: عرض المسار الكامل في أداة النصوص Label4

أنقر نقرتين فوق صندوق الملفات File1 وأكتب الشيفرة التالية :

Label4 = Dir1 + "\" + File1

ويعني عرض المسار الكامل للملف في Label4

جرب البرنامج ولاحظ الحدث

هذه الأدوات مهمة في أي برنامج فهي تستخدم لفتح ملف مثلاً.






ملاحظة: يمكنك تحديد نوع الملفات التي تريده أن يظهر في صندوق عرض الملفات صور Bmp ملفات صوت Wav ....

وذلك عن طريق خاصية Pattern

لعرض كافة التنسيقات أكتب مايلي: *.*

لعرض البرامج فقط *.exe أكتب

فقط عليك أن تعرف ملحق التنسيق وكتابته بدلاً من exe لعرضه في الصندوق

عرض نوعين أو أكثر دون عرض كافة الأنوع كمايلي: لنفرض تريد عرض البرامج exe والصور bmp تكتب كما يلي:

*.exe;*.bmp

فصلنا بين النوعين بالفاصلة المنقوطة ويمكنك أن تظيف أي نوع ولكن عليك الفصل بين الأنواع بالفاصلة المنقوطة دون فراغ.

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






--------------------------------------------------------------------------------




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

أداة التوقيت Timer لن تحتاج إلى درس طويل لذلك نشرحها هنا بدرس بسيط أتمنى أن يفيد قليلاً



http://www.bwady.com/droos/visualbasic/les2/timer.JPG تستخدم أداة التوقيت Timer لعمل حدث بعد وقت معين أو لتكرار الحدث طول التكرار

لتغيير وقت التايمر في خاصية Interval. أكتب القيمة باجزء من الثانية مثلاً لو أردت أن يعمل كل ثانية عليك كتابة 1000

لتعطيل التايمر هناك خاصية Enabled تتيح تعطيله وتشغيله

خذ هذا المثال البسيط : ساعة رقمية

إصنع فورم وأضف إليه Timer و Text

غير خاصية Interval إلى 500 أو أي قيمة تحت 1000

أنقر فوق التايمر نقرتين وأكتب السطر التالي

Text1=Time

شغل المثال سوف يظهر لك الوقت متغيراً في أاة النصوص Text



تم إنهاء الدرس

بومبه
06-11-2005, 10:41 AM
التعامل مع List Box و Combo Box



الكومبو والليست يستخدمان لضم قائمة للإختيار منها لاحظ الشكل.

http://www.bwady.com/droos/visualbasic/les2/cl.JPG


لايختلف الكومبو عن الليست كثيراً سوى أن الكومبو لايظهر القائمة إلى عند النقر عليه ويستخدم الكومبو أيضاً للكتابة بداخله.

طريقة الإضافة إلى الأداتين هي نفس الطريقة:

1- عن طريق الخاصية List يمكنك كتابة العناصر

2- إذا كنت تريد إضافة عناصر عند تحميل البرنامج عليك كتابة هذا الكود في حدث Load للفورم:

List1.AddItem "النص هنا"
Combo1.AddItem "النص هنا"

3- أما إذا كنت قد وضعت أداة الكتابة TextBox فأكتب الكود التالي:

List1.AddItem Text1.Text

Combo1.AddItem Text1.Text

إذا لإضافة نص عليك وضعه بين علامتي الإقتباس " "

ولإضافة النص من صندوق كتابة ضع إسم التكست دون علامات الإقتباس



ويمكنك تعديل اليست ListBox للسماح بتحديدات متعددة. أنظر الشكل في الأسفل

وذلك عن طريق تعديل الخصائص Style و MultiSelect



http://www.bwady.com/droos/visualbasic/les2/cl3.JPG
ويمكن ربط الكومبو والليست بقاعدة بيانات جاهزة ويتم عرض السجلات بداخلهما .

هذا جدول الخصائص الأساسية ل List Box

معناها
اسم الخاصية

اسم الأداة
Name
الظهور
Appearance

عرض التحديد
columns
لون الخلفية
Back Color

الفاعلية
Enabled

نوع الخط
Font
لون الخط
ForColor
البعد عن الحافة اليسرى
Left

السماح بتحديدات متعددة
MultiSelect
يحوي على خانات إختيار
Style
مؤشر الماوس
MousePointer

الأيقونة التي تثمل مؤشر الماوس
MouseIcon
الإتجاه من اليمين لليسار
RightToLeft

ترتيب Tab
TabIndex

إيقاف الTab
TabStop

ماسيظهر عند وضع الماوس فوقها
ToolTipText
Tag
Tag

النص
Caption

البعد عن حافة النافذة العليا
Top

مرئي أو مخفي
Visible

العرض
Width


وخصائص الكومبو ComboBox هي نفس الخصائص السابقة سو بعض التغييرات:

Text وتعني النص الذي سيظهر في التحديد الأول للكومبو

Locked ممنوع من الكتابة بداخله

وتختلف خاصية الستايل Style أيضا

نهاية الدرس

بومبه
06-11-2005, 10:43 AM
كائن التطبيقات OLE

http://www.bwady.com/droos/visualbasic/les2/ole.JPG يستعمل الكائن OEL لإدارج تطبيق في برنامجك كإدراج صورة نقطية يمكنك التحرير والرسم فيها من داخل برنامجك عن طريق دمج الرسام معه.

ويمكنك دمج الكثير من العناصر كملفات Word و Access و أي تطبيق أخر.

http://www.bwady.com/droos/visualbasic/les2/ole.GIF


لنأخذ مثال ورقة أكسل.

انقر أداة التحكم OLE ثم ارسم مستطيلا كبيرا في زاوية النموذج اليسرى العليا بعد إفلات زر الفارة يظهر مربع حوار أدراج كائن Insert Object يعرض قائمة الكائنات التي يمكن ربطها في النموذج



يحتوي الكائن المربوط على بيانات تتم أدارتها في البرنامج الأصلي حيث تم إنشاءه أما الكائن المضمن فيحتوي على بيانات مخزنة ضمن تطبيقك وبإمكان التطبيقات الأخرى الوصول إلى الكائنات المربوطة انقر زر خيار إنشاء من ملف Create From File في مربع حوار أدراج كائن Insert Object يظهر مربع صغير فيه مسار كائن لإضافة ملف موجود إلى البرنامج انقر مربع الاختيار ارتباط Link لإنشاء كائن مربوط في برنامجك وعندما تنقر مربع الاختيار ارتباط سيتم تحميل صورة من الملف الذي اخترته في كائن OLE انقر زر استعراض Browse للبحث عن ملف اكسل ستربطه انتقل إلى مجلد حفظ ملفات اكسل في مربع حوار استعراض Browse ثم انقر ورقة العمل Book1 ثم انقر زر أدراج Insert انقر موافق عندما يظهر مربع حوار أدراج كائن Insert Object لإنشاء ربط بالملف ستظهر صورة من ورقة عمل اكسل في كائن OLE بما أن كائن OLE مربوط بورقة عمل اكسل فبإمكان المستخدمين استخدام ورقة العمل في اكسل والعمل عليها وسوف تظهر التغيرات التي يقومون بها في برنامجك انقر أداة التحكم OLE ثم ارسم مستطيلا في اسفل النموذج من الجهة اليسرى تحت ورقة عمل اكسل يظهر مربع حوار أدراج كائن Insert Object بعد رسم المستطيل انقر زر إلغاء Cancel لإغلاق مربع حوار أدراج كائن Insert Object لأننا سنضع جزء من ملف اكسل , ولتضمين جزء من ملف يجب نسخ هذا الجزء Copy من التطبيق الذي أنشأه ثم لصقه في كائن OLE 8- قم بتشغيل برنامج اكسل وافتح الملف الذي تعمل عليه Book1 انقر حافة الرسم التخطيطي ثم اختر أمر النسخ Copy من قائمة تحرير Edit لوضع نسخة من التخطيط المبيعات في حافظة ويندوز ارجع إلى فيجول بيزك وضع مؤشر الفارة فوق كائن OLE الفارغ ثم انقر زر الفارة الأيمن تظهر قائمة مختصرة بجانب كائن OLE اختر أمر Paste Link من قائمة لإدراج تخطيط المبيعات في كائن مع خيار ارتباط بلصق تخطيط اكسل داخل كائن مع ربط التخطيط يظهر تخطيط المبيعات في كائن OLE قم بتغير المقاسات للنموذج ومربعات كائن لتتناسب مع البيانات وتعديل مكان الصورة الخطوة الأخيرة في عمل البرنامج هي أدراج سطور الشفرة لتعديل الربط بين البرنامج وملفات اكسل , انقر النموذج نقرا مزدوجا لفتح الأجراء الحدثي Form-Load() واكتب فيه OLE1.UpDate OLE2.UpDate تستعمل هذه الجمل طريقة Update لتحميل أي تغيرات تحدث في ملفات اكسل المربوطة في التطبيق احفظ المشروع والنموذج وقم بتشغيله تشغيل برنامج نظام المعلومات
انقر زر التشغيل لتشغيل البرنامج يقوم البرنامج بتحميل البيانات من ثلاثة مصادر هي ورقة عمل اكسل وتخطيط اكسل وصورة يعرضها على الشاشة
انقر الزر الأيمن الداخلي لكائن البيانات لاستعراض أسماء المؤلفين انقر نقرا مزدوجا على ورقة اكسل يتم تشغيل اكسل ويحمل ورقة العمل وبما أن الكائن الذي أدرجته مربوط بورقة العمل يتيح لك فيجوال بيزك إجراء تغييرات على ورقة العمل الأصلية وحفظها في ملف الورقة الأصلي ملاحظة
إذا كنت لا تريد أن يتمكن أحد من تشغيل اكسل وإجراء تغييرات بالملف اضبط خاصية Enabled لكائن OLE عند القيمة False قم بأي تغييرات ثم اختر أمر File>Exit من اكسل ثم انقر نعم yes لحفظ التغييرات يتم تحديث ورقة العمل الأصلية ويتم إغلاق اكسل ويعود البرنامج للظهور مع التغييرات الجديدة إذا كنت تريد أن يستجيب فيجول بيزك للتغييرات يمكن وضع الطريقة Update في إجراء حدثي خاص بكائن OLE يتم تنفيذه عند حدوث أي تغيير في كائن OLE.



هذا كان درسنا عن كائن التطبيقات OLE

بومبه
06-11-2005, 10:44 AM
المصفوفات والمتغيرات(1)



المصفوفة هي قيم مخزنة في البرنامج يتم الإضافة إليها وعرضها.

التصريح عن المتغير يتم كمايلي:



1 - إما في الحدث

Dim a, b As Integer

a و b متحولات عددية

2- في قسم التصريحات General:

'تعريف متحول عددي
Dim no1 As Integer
'تعريف مصفوفة عددية سعتها 10 عناصر
Dim list(10) As Integer
'تعريف مصفوفة مؤلفة من 10 عناصر عرض و10 إرتفاع أي 100 عنصر
Dim matrix(10, 10) As Integer
'تعريف متغير نصي
Dim name1 As String
'تعريف متغير نصي بطول 50 حرف
Dim name1 As String * 50
'تعريف مصفوفة نصية تتكون من 10 عناصر
Dim list1(10) As String
'تعريف مصفوفة نصية تتألف من 10 عناصر بطول 50 حرف
Dim list1(10) As String * 50
'تعريف متغير للقيم نعم ولا
Dim a As Boolean

التصريح في وحدة نمطية Module:



'تعريف متغير عددي لكافة نوافذ البرنامج
Global no1 As Integer

'تعريف عدة متغيرات في مجموعة واحدة
Type user
user_no As String * 70
user_name As String * 30
user_mark As Integer
End Type




الأن نأتي إلى كيفية إستخدام المتغيرات

طريقة الإضافة إلى المتغير هي

مثلاً لو صرحنا عن متحول عددي a نكتب كما يلي:

a=90

أوعن طريق تعليمة الإسناد Let وتكتب كما يلي

Let a=90

أو يمكن إسناد قيمة عملية رياضية بين عددين مثل

Let a=5*6

لكي تظهر قيمة المتحول على الفورم أكتب التعليمة Print ثم إسم المتحول

Print a

ويمكنك عرض قيمة المتحول في صندوق نص Textbox

Text1=a

والأن سوف نعمل مثال بسيط للمتحولات ألة حاسبة:

أضف إلى الفورم أربع أزرار أمر جمع وطرح وضرب وقسمة

وأضف ثلاث اداة النص Text ولتكن أسمائها Text1 و Text2 وText3

ضع التصريح التالي في قسم General

Dim a, b As Integer

ثم في الأزرار ضع الأكواد

On Error Resume Next
a = Text1.Text
b = Text2.Text
Text3.Text = a + b

الكود السابق للجمع فقط أبدل الإشارة + بالإشارت الإخرى

هناك درس تابع للمتحولات

بومبه
06-11-2005, 10:44 AM
والمتغيرات(2)



يجب ان تشمل المصفوفة على:

أ‌- اسم المصفوفة: الاسم الذي ستستعمله للمصفوفة في البرنامج

ب‌- نوع البيانات : يحدد نوع البيانات التي ستخزنها المصفوفة

ج- عدد الأبعاد : لمعظم المصفوفات بعد واحد (قائمة قيم) أو بعدين (جدول قيم)

د- عدد العناصر : يحدد عدد عناصر المصفوفة وبشكل افتراضي تكون أول خانة في المصفوفة برقم فهرس 0 (صفر) كما هو الحال مع مصفوفات التحكم

تسمى المصفوفات التي تحتوي على عدد عناصر محدد بمصفوفات ثابتة الحجم Fixed Size أما المصفوفات التي تحتوي على عدد عناصر متغير فهي مصفوفات يمكن توسيعها خلال تشغيل البرنامج ويطلق عليها اسم Dynamic مصفوفات ديناميكية تصريح مصفوفة ثابتة
التركيب النحوي الأساسي لتصريح مصفوفة ثابتة الحجم عامة هو (Public Arry Name(Dim iliements,Dim2 Elemets,... تغيير رقم البداية في المصفوفة
تغير جملة Option Base رقم أول عنصر في المصفوفة بجعله أي رقم بدلا من الرقم صفر الافتراضي فإذا أردت زيادة الوضوح في البرنامج بجعل رقم أول عنصر في المصفوفة هو العنصر رقم 1 بدلا من رقم 0 يمكنك وضع جملة Option Base التالية في وحدة نمطية قياسية Option Base 1 تربط هذه الجملة العنصر الأول (الأساس Base ) لكل المصفوفات في البرنامج بالرقم 1 مثال استخدام المصفوفات


بعد تجهيزك للفورم أضف إليه زرين أمر Command Button

غير خاصية Caption لكل من الأزرار كما يلي:

Command1 = إدخال

Command2 = إظهار النتيجة

ولا تنسى تغيير خاصية الإتجاه للفورم Right To Left



وأضف وحدة نمطية Module

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

Option Base 1
Public Degs(9) As Variant

أضف الكود التالي إلى زر تخزين القيم

cls: prompt$ = "إدخال قيمة"
For i% = 1 To 3
Title$ = "القيمة" & i%
Degs(i%) = InputBox(prompt$, Title$)
Next i%



تمحو جملة Cls في أعلى الأجراء الحدثي إخراج الجمل Print السابقة على النموذج ليصبح بإمكانك إدخال اكثر من مجموعة قيم



ثم أضف الكود التالي إلى الزر الثاني

cls: Print "القيم": Print "-----------"
For i% = 1 To 3
Print "المادة" & i% & "قيمة" & Degs(i%): Print "-----------"

total! = total! + Degs(i%): Next i%
Print "مجموع القيم" & total!





تم إنهاء درس المصفوفات والمتغيرات

بومبه
06-11-2005, 10:46 AM
الطباعة باستخدام Print Object



إن الطباعة من الأساسيات في برامجك فأي برنامج يحتاج إلى الطباعة

في هذا الدرس سوف نقدم مثالاً بسيطاً لطباعة نص دون إستخدام توابع API



أولاً يجب أن يكون لديك طابعة إفتراضية مثبتة ولو لم يكن لديك طابعة أضف طابعة وهمية للتجريب . عن طريق لوحة التحكم -> الطابعات -> إضافة طابعة



ثانياً عليك تجهيز الفورم بمايلي:

1 - أداة النصوص Text1

2 - الصندوق List1

3 - زر أمر Command1

هذه الأدوات التي عليك إضافتها

http://www.bwady.com/droos/visualbasic/les3/form.JPG


الأن نبداً بالعمل :

1- أنقر نقرتين فوق الفورم وأكتب الشيفرة التالية في الحدث Load للفورم

Dim a As Integer
For a = 0 To Printers.Count -1
List1.AddItem Printers(a).DeviceName
Next
End Sub

شرح الكود :

هذا الكود يقوم بوضع قائمة بأسماء الطابعات المثبتة لديك في الصندوق List1 لتتمكن من إختيار الطابعة التي تريد الطباعة عليها.



2- أنقر نقرتين فوق List1 وأكتب الكود التالي :

Set Printer = Printers(List1.ListIndex)

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



3-الأن نبدأ بعملية الطباعة :

أكتب النص الذي تريد طباعته في Text1

أضف الكود التالي إلى زر Command1:


Printer.FontSize = 40
Printer.Print Text1.text
Printer.EndDoc

في السطر الأول تحديد حجم الخط

في السطر الثاني إرسال النص إلى الطابعة

في السطر الثالث بدء الطباعة الفعلية



هذه عملية الطباعة البسيطة بإستخدام Print Object ولاكن هناك عمليات طباعة ضخمة بتوابع API

سيكون لنا حديث خاص عنها



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

بومبه
06-11-2005, 10:47 AM
التعامل مع الحافظة



درس اليوم ليس صعباً ولاكنه هام . سوف تعرف كيف تنسخ النص وتلصق ماهو منسوخ من أي برنامج أخر وكذلك الصور.

فلو إلتقطت صورة عن طريق مفتاح Print Screen SysRa فإنك تستطيع لصق الصورة في برنامجك وحفظها .

طريقة العمل ليست صعبة . بعد تجهيز الفورم أضف العناصر التالية:

http://www.bwady.com/droos/visualbasic/les3/clibbord.JPG


أداة النصوص Text1

5 أزرار Command غير Caption كما في الصورة

أداتين عرض الصور Picture1 و Picture2



ناتي إلى كتابة الشيفرة الخاصة بالعمل:



في الزر مسح الحافظة أضف السطر التالي

Clipboard.Clear

في الزر نسخ النص أضف السطر التالي:

Clipboard.SetText Text1.Text

في الزر لصق النص أضف السطر التالي:

Text1.Text = Clipboard.GetText

هذه الأسطر السابقة تقوم بنسخ كافة النص ولصقه

أما إذا أردت نسخ جزء محدد فإستبدل Text1.text بالكود Text1.SelText

نأتي الأن إلى نسخ ولصق الصور :

نفس الطريقة السابقة ولكن إستبدل Text1.text بإسم أداة الصور Picture1 أو Picture1

في الزر نسخ الصورة أضف السطر التالي:

Clipboard.SetData Picture1.Picture

في الزر لصق الصورة أضف الكود التالي :

Picture2.Picture = Clipboard.GetData


كان هذا درسنا شكراً لزيارتكم

بومبه
06-11-2005, 10:50 AM
إن أبسط برنامج تريد صنعه سوف يحتاج بالتأكيد إلى قوائم منسدلة مثلاً : ملف . تحرير . تعليمات .....

وهذا الدرس يساعدك على كيفية إنشاء القوائم:

لفتح محرر القوائم أنقر فوق الزرhttp://www.bwady.com/droos/visualbasic/les3/menubutton.JPG في شريط الأدوات أو من قائمة Tools إختر Menu Edior فيظهر لك محرر القوائم
http://www.bwady.com/droos/visualbasic/les3/menu_win.JPG


أكتب العنوان الذي سوف يظهر في Caption مثلاً (العنوان )

ثم أدخل التسمية الخاصة للقائمة في حقل Name والتي سوف تتعامل معه الفيجوال بيسك

ثم إضغط Next فتكون قد أنشأت القائمة الرئيسية

لإضافة عناصر للقائمة أكتب عنوان العنصر في Caption وإسمه الداخلي في Name وأنقر فوق الزر http://www.bwady.com/droos/visualbasic/les3/make.JPG
لإضافة فاصل بين القوائم في مكان العنوان Caption أكتب إشارة الطرح (-) وأدخل أي إسم داخلي في Name

لإضافة قائمة فرعية إضغط Next لإضافة عنصر أدخل المعطيات Caption و Name ثم أنقر فوق الزر http://www.bwady.com/droos/visualbasic/les3/make.JPG


ثم إضغط Ok للحفظ والإغلاق

وقت التشغيل هكذا سوف تظهر القائمة التي أنشأتها

http://www.bwady.com/droos/visualbasic/les3/2.JPG
ربما سوف تتسائل كيف تظهر القائمة عند النقر بالزر الأيمن للماوس ! هذا بسيط :

فقط في مكان الحدث عند النقر بالزر الأيمن فوق الفورم مثلاً عل فرض أن الفورم إسمه Form1

إختر الحدث Mouse Down لل Form1 وأكتب السطر التالي

If Button = 2 Then
Form1.PopupMenu menu1
End If

طبعاً Menu1 هي إسم القائمة الرئيسة والتي سوف تظهر عند النقر بالزر الأيمن . ويمكنك تغيير خاصية Visible في محرر القوائم لإخفاء القائمة الرئيسية

http://www.bwady.com/droos/visualbasic/les3/1.JPG
هذا الذي مااستطعت أن أشرحه أرجو أن يحقق الفائدة

بومبه
06-11-2005, 10:58 AM
الرسائل Msgbox



الشكل العام للرسالة :



MsgBox "نص الرسالة", vbDefaultButton1, "العنوان"

الأزرق نوعها




الشكل الكامل (مع ربط بالتعليمات):



MsgBox "نص الرسالة", vbMsgBoxHelpButton, "العنوان", "c:\windows\help\windows.chm", 0

مسار ملف التعليمات




أنقر هنا لتعرف كيف تضع عدة أسطر في الرسالة

هذا الجدول يعطيك أمثلة عن الرسائل


الشكل العام

Msgbox"رسالتك هنا"
التنفيذ
http://www.bwady.com/droos/visualbasic/les3/msgbox_image/11.JPG
مثال
On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox "الرجاء إدخال قرص", vbCritical, "لايوجد قرص هنا"


MsgBox "حدث خطأ", vbCritical, "خطأ" http://www.bwady.com/droos/visualbasic/les3/msgbox_image/1.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox "الرجاء إدخال قرص", vbExclamation, "لايوجد قرص هنا"

MsgBox "رسالتك هنا", vbExclamation, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/2.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox "الرجاء إدخال قرص", vbInformation, "لايوجد قرص هنا"
MsgBox "رسالتك هنا", vbInformation, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/3.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox "الرجاء إدخال قرص أنقر فوق تعليمات للمزيد", vbMsgBoxHelpButton, "لايوجد قرص هنا", "c:\windows\help\windows.chm", 0

MsgBox "رسالتك هنا", vbMsgBoxHelpButton, "العنوان", "C:\WINDOWS\HELP\calc.CHM", 0http://www.bwady.com/droos/visualbasic/les3/msgbox_image/4.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox("الرجاء إدخال قرص أنقر فوق موافق", vbOKCancel, "لايوجد قرص هنا") = vbOK Then
MsgBox "أعد المحاولة"
Else
End
End If

MsgBox "رسالتك هنا ", vbOKCancel, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/5.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox("الرجاء إدخال قرص أنقر فوق موافق", vbOKCancel, "لايوجد قرص هنا") = vbOK Then
MsgBox "أعد المحاولة"
Else
End
End If
MsgBox "رسالتك هنا ", vbYesNo + vbQuestion, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/6.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox("لايوجد قرص هل تريد الخروج؟", vbYesNo, "لايوجد قرص هنا") = vbYes Then
End
End If

MsgBox "رسالتك هنا ", vbSystemModal, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/7.JPG رسالة عادية مع أيقونة النظام

MsgBox "رسالتك هنا ", vbAbortRetryIgnore, "العنوان"http://www.bwady.com/droos/visualbasic/les3/msgbox_image/8.JPG On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
Dim a
a = MsgBox(" أنقر فوق إعادة لمحاولة أخرى - تجاهل : للبقاء دون محاولة-إحباط : إغلاق البرنامج", vbAbortRetryIgnore, "لايوجد قرص هنا")
Select Case a
Case vbRetry

MsgBox "أعد المحاولة"
Case vbAbort
End
Case vbIgnore
End Select

بومبه
06-11-2005, 11:00 AM
صنايق الحوار Common Dialog



في هذا الدرس سوف نتحدث عن كيفية استخدام صناديق الحوار CommonDialog

ربما لم تسمع بهذه الأداة سابقاً. ولاكن سوف تعرفها:

عندما تفتح أي برنامج فإنك سوف تحفظ عملك في النهاية ! ماذا يظهر لك عندما تختار "حفظ" ؟

وإذ فتحت أي برنامج وتريد فتح ملف فسوف يظهر لك أيضا صندوق الحوار الخاص بالفتح وهو نفس صندوق الحفظ!

هذا الصندوق يسمى Common Dialog و هذه الأداة تستخدم في معظم البرامج المبرمجة بواسطة الفيجوال بيسك.



هناك طريقتان لإستخدام هذه الأداة :

الطريقة بإستخدام أداة جاهزة: Microsoft Common Dialog Control

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

لذلك سيكون درسنا بإستخدام الأداة : Microsoft Common Dialog Control . طبعاً تعرف كيف تضعها على الفورم

كليك يمين فوق صندوق الأدوات إختر Components ثم تجد الأداة Microsoft Common Dialog Control 6,0 حددها وأنقر Apply



سوف تظهر الأيقونة http://www.bwady.com/droos/visualbasic/les3/comd1.GIF على صندوق الأدوات . ضعها على الفورم . سوف يكون إسم الأداة CommonDialog1

ضع على الفورم الأداة Picture1 وزر Command1

ضع الكود التالي في الزر:

CommonDialog1.DialogTitle = "فتح ملف"
CommonDialog1.Filter = "Gif صور|*.gif|JPG صور|*.jpg|Bmp صور|*.bmp|كافة الملفات|*.*"
CommonDialog1.ShowOpen
If CommonDialog1.FileName = "" Then Exit Sub
Picture1.Picture = LoadPicture(CommonDialog1.FileName)

شرح الكود:

السطر الأول : تحديد العنوان الذي سوف يظهر في أعلى الصندوق

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

السطر الثالث : إظهار الصندوق

السطر الرابع : إذا لم يتم تحديد ملف ألغي الحدث

السطر الخامس: عرض الصورة التي قمت بتحديدها في الأداة PIcture1
كان هذا مثال بسيط لتمسك رأس الخيط . مازل هناك العديد من العمليات بواسطة CommonDialog. منها: تحديد الخط والتلوين و خصائص الطباعة و الحفظ .

الأن لنأخذ مثال عن إستعمال ألوان CommonDialog:

نفس الأدوات السابقة أضف زر Command2 وأكتب الكود التالي:

CommonDialog1.ShowColor
If CommonDialog1.Color = 0 Then Exit Sub
Picture1.BackColor = CommonDialog1.Color

شرح الكود :

السطر الأول : إظهار ألوان الكمون دايلوك

السطر الثاني : إذا لم يتم تحديد لون ألغي الحدث

السطر الثالث : تلوين مربع الصورة باللون الذي تم تحديده بالكمون دايلوك




سوف نتحدث الأن عن عملية فتح وحفظ مستند نص:

جهز الفورم بالأدوات التالية:

زرين أمر : فتح و حفظ

أداة عرض النص Label1

أداة الكتابة Text1 ولاتنسى تبديل الخصائص MultiLine و ScrollBars

وأهم شيىء الأداة CommonDialog





لاحظ الشكل التالي:

http://www.bwady.com/droos/visualbasic/les3/frmcommd.JPG
كتابة الشيفرة:

أنقر دبل كليك على زر الفتح وأكتب الكود التالي:

Dim file As String
CommonDialog1.Filter = "ملفات النصوص|*.txt"
CommonDialog1.ShowOpen
Open CommonDialog1.FileName For Input As #1
Input #1, file
Close
Text1.Text = file

السطر الأول : التصريح عن متحول نصي

السطر الثاني : تحديد الملفات التي سيعرضها الكمون دايلوك

السطر الثالث : إظهار اللكمون دايلوك

السطر الرابع والخامس والسادس فتح المستند كمتحول

السطر السابع : عرض مسار الملف في Label1

السطر الأخير عرض النص في أداة الكتابة Text

نأتي إلى الحفظ :

ضع الكود التالي في زر الحفظ:

Dim a As String
a = Text1
CommonDialog1.Filter = "Text File|*.txt"
CommonDialog1.FileName = a
CommonDialog1.ShowSave


السطر الأول : التصريح عن متحول نصي (a)

السطر الثاني إسناد النص المكتوب إلى المتحول a

السطر الثالث: تحديد قيمة الكمون دايلوك وهو المتحول a

السطر الرابع عرض مربع الحفظ.






وبذلك نكون قد أعطينا فكرة عن إستعمال الكمون دايلوك . طبعاً هناك العديد من الأحداث لهذه الأداة سوف تمر معنا في الدروس القادمة.

وبعملك وتجريبك أنا متأكد من أنك ستنجز شيئاً عظيماً

شكراً لكم

بومبه
06-11-2005, 11:01 AM
التعامل مع الأخطاء



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

فدرسنا اليوم هو للتصريح عن الخطأ وتجاهله :



التعليمة القياسية لتجاهل الأخطاء هي

On Error Resume Next

تكتب قبل الحدث وتقوم بإلغاء الحدث عند وقوع خطأ



وهناك طريقة أخرى وهي عمل حدث كرسالة مثلاً عند وقوع الخطأ

أولا عليك التصريح عن الخطأ كمايلي

On Error Goto R

(R) هي اسم الخطأ يمكنك تغييره لما تريد

بعد ذلك أكتب الحدث .... مثلاً Form2.Show اذا لم يكن الفورم2 موجودا ً سوف يتم اغلاق البرنامج

فعليك أن تكتب التعليمة بالشكل التالي

On Error GoTo R
Form2.Show
Exit Sub
R:
MsgBox "حدث خطأ في البرنامج", vbCritical, "غير موجود"


في السطر الأول التصريح عن الخطاُ

في السطر الثاني الحدث الأساسي

في السطرالرابع والخامس يتم تحديد فعل المتحول

يمكنك تحديد أي حدث للمتحول بدلاً من الرسالة أو يمكنك أن تكتب السطر التالي :

MsgBox Err.Description

أي أن الرسالة ستكون من أصل الخطأ


إليك مثالاً مفيداً للتصريح عن الخطأ

اصنع Form أضف اليه أداة Drive1 "محركات الأقراص" وأداة Dir1 "صندوق المجلدات "

أنقر فوق Drive1 نقرتين وأضف الأسطر التالية:

On Error GoTo error1
Dir1.Path = Drive1.Drive
Exit Sub
error1:
MsgBox "الرجاء إدخال قرص في محرك الأقراص هذا", vbCritical, "خطأ"

السطر الأول التصريح عن الخطأ

السطر الثاني الحدث الأساسي "عرض المجلدات داخل محرك الأقراص المحدد"

الأسطر الأخيرة عمل المتحول وهو عرض رسالة خطأ

ويمكنك الإستغناء عن الرسالة السابقة بالرسالة الأساسية للخطأ بالتعليمة التالية:

MsgBox Err.Description



هذا مجرد شرح بسيط عن الأخطاء لكي يكون برنامجك نظيفاً خالياً من أي Error

بومبه
06-11-2005, 11:02 AM
الملتميديا - تشغيل الصوت دون أدوات



درس اليوم هو عبارة عن طريقة تشغيل ملف صوت WAV عن طريق برنامجك دون ان تحتاج إلى وضع عنصر تحكم جاهز

أضف فورم ووحدة نمطية Module

انسخ الأسطر التالية إلى الوحدة النمطية Module



Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Global Const SND_ASYNC = &H1


أضف الكود التالي إلى زر أمر Command

rc = sndPlaySound(إسم ملف الصوت هنا, SND_ASYNC)

لاتنسى تبديل ماهو مكتوب باللون الأزرق إلى عنوان الملف كاملاً

لاحظ أنه لايشغل التنسيقات الضخمة مثل mp3 وأحيانأ ملفات الصوت الضخمة أيضاً



هناك طريقة أخرى أيضاً

ضع هذه الأسطر في فسم التصريحات General

Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Const SND_ALIAS = &H10000
Const SND_ASYNC = &H1
Const SND_SYNC = &H0
Const SND_NOWAIT = &H2000
Const SND_LOOP = &H8

Sub SoundCheck()
Dim lRetVal As Long
lRetVal = sndPlaySound("عنوان الملف هنا", SND_SYNC)
End Sub

أضف السطر التالي إلى زر الأمر Command

SoundCheck

ولاتنسى تكتب مسار الملف كامل

ولاتنسى تدعيلنا بالتوفيق

بومبه
06-11-2005, 11:04 AM
الملتميديا - تشغيل الصوت بأداة MCI



هناك طريقة جيدة لتشغيل الصوت بكافة انواعه وهي عن طريق إستخدام عنصر التحكم Microsoft Multimedia Control

طريقة وضعه على الفورم هي :

أنقر بالزر اليمين للماوس فوق صندوق الأدوات . فتظهر لك قائمة إختر منها Components

فيظهر لك مربع حوار يحوي على الأدوات سوف تجد فيها العنصر Microsoft Multimedia Control وأنقر فوق الزر Ok

ضعها على الفورم وأضف العناصر التالية

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

Driver1

Dir1

File1

وأداة النصوص Label1

إضافةً إلى عنصر الملتميديا MMControl1

لاحظ شكل أداة الملتميديا في أسفل النموذج

http://www.bwady.com/droos/visualbasic/les3/frmmm.JPG


نأتي الأن إلى العمل والحدث :

1- أنقر فوق أداة السواقات Drive1 نقرتين وأكتب السطر التالي:

On Error Resume Next
Dir1 = Drive1

وهذا يقوم بعرض المجلدات الموجودة داخل المحرك المحدد

2- أنقر فوق أداة المجلدات Dir1 وأكتب الكود اتالي:

File1 = Dir1

وهو يقوم بعرض الملفات في المجلد المحدد داخل أداة الملفات File1

3- أنقر فوق صندوق الملفات وأكتب السطر الأسطر التالية



Label1 = Dir1.Path & "\" & File1
MMControl1.FileName = Label1
MMControl1.Command = "open"
MMControl1.Command = "play"



السطر الأول يقوم بعرض المسار الكامل للملف المحدد في صندوق الملفات داخل الأداة Label1

السطر الثاني يقوم بتحديد الملف لأداة الملتميديا وهو الملف المكتوب داخل الأداة Label1

السطرين الأخيرين يقومان بتشغيل الملف



لاحظ الأوامر المكتوبة لعنصر التحكم MMControl1

يمكنك إخفاء أداة الملتميديا MMControl1 عن طريق خاصية Visible

وبعد ذلك تضيف صور تكون قد صممتها لتكون بدلاً من ازرار العنصر MMControl1

ثم أنقر فوق الصورة التي وضعتها وأكتب الأوامر للأداة MMControl1

مثلاً

في الصورة الأولى لتكن رمز التشغيل:

MMControl1.Command = "play"

في الصورة الثانية لتكن رمز إيقاف مؤقت:

MMControl1.Command = "Pause"

وهكذا ضع الأوامر المعروفة مثلاً Stopو Play .......




يمكنك إضافة ميزات كثيرة أيضا منها شريط الحالة الذي يعطيك إلى أين وصلت قرائة الملف :

أضف إلى الفورم السابق شريط التمرير الأفقي HScroll1

ثم أنقر فوق أداة الملتميديا وإختر الحدث StatusUpdate ثم أكتب الكود التالي:

HScroll1.Value = mm.Position * 100 / MMControl1 .Length

ويمكنك إضافة أداة Label ليتم عرض الوقت الأصلي للملف والوقت الذي تم قرائته كمايلي:

أضف أداتين Label2 و Label3

وأكتب الكود التالي في حدث StatusUpdate لأداة الملتميديا تحت الكود السابق:

Dim a As Integer
Dim b As Integer
a = MMControl1.Length / 1000
b = MMControl1.Position / 1000
Label2.Caption = a
Label3.Caption = b


وبذلك تكون قد صنعت برنامج مشغل ملفات الملتميديا الصوتية.

ولنا درس أخر لتشغيل الملفات الصوتية والمرئية (ملفات الفيديو)

بومبه
06-11-2005, 11:05 AM
الملتميديا - تشغيل ملف فيديو



درس اليوم سوف يعجبك كثيراً إذا فهمت الأساسيات وفكرت قليلاً سوف تعمل أجمل برنامج لفتح ملفات الصوت والصورة.

سوف نتعامل مع عنصر تحكم جاهز هو Windows Media Player وتعرف كيف تضيفه . عن طريق زر يمين فوق صندوق الأدوات

اختر Windows Media Player وأنقر Ok فتظهر أيقونته على صندوق الأدوات . ضعه بعد ذلك على الفورم وضع الأدوات التالية:

أدوات عرض الملفات Drive1 و Dir1 و File1

وأضف أداة النصوص Label1

لاحظ الصورة: عنصر Windows Media Player هو الذي في الأسفل.



http://www.bwady.com/droos/visualbasic/les3/frmm3.JPG


العمل بسيط جداً

1- أنقر فوق أداة السواقات Drive1 نقرتين وأكتب السطر التالي:

On Error Resume Next
Dir1 = Drive1

وهذا يقوم بعرض المجلدات الموجودة داخل المحرك المحدد

2- أنقر فوق أداة المجلدات Dir1 وأكتب الكود اتالي:

File1 = Dir1

وهو يقوم بعرض الملفات في المجلد المحدد داخل أداة الملفات File1

3- أنقر فوق صندوق الملفات وأكتب السطر الأسطر التالية



Label1 = Dir1 + "\" + File1
MediaPlayer1.FileName = Label1

السطر الأول لعرض مسار الملف والسطر الثاني لتشغيل الملف



كما قلنا أنه يمكنك إضافة ازرار خاصة للعمل.ويمكنك إضافة الأحداث

مثلا

MediaPlayer1.Pause
MediaPlayer1.Play
MediaPlayer1.Stop



ويمكنك إضافة أحداث أخرى مثل عرض الإحصائيات والتكبير ...

أكتب في مكان الحدث MediaPlayer1 ثم نقطة فتظهر لك قائمة إختر منها الأحداث وهي التي بجانبها أيقونة خضراء


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

بومبه
06-11-2005, 11:09 AM
تشغيل الملفات

هناك عدة طرق لتشغيل الملفات في الويندوز من داخل الفيجوال بيسك.

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



نبدأ بتشغيل الملفات التنفيذية ( البرامج EXE)

أولاً - بإستخدام الدالة Shell :

هذه الدالة تستخدمها الفيجوال بيسك لتشغيل الملفات التنفيذية.

صيغتها العمامة كما يلي.

Shell "File Name Path", WindowsStyle


File Name Path : مسار الملف التنفيذي المراد تشغيله.

WindowsStyle : طريقة عرض نافذة البرامج المراد تشغيله . وهذا الجدول يبين الثوابت لهذا الوسيط:

الثابت vbHide قيمته0 شرحه تكون النافذة مخفية
vbNormalFocus
1 تكون النافذة في حجمها الطبيعي مع إعطاء التركيز لها
vbMinimizedFocus
2 تكون النافذة في وضع التصغير على شريط المهام وإعطائها التركيز
vbMaximizedFocuse
3 تكون النافذة في وضع التكبير مع إعطائها التركيز
vbNormalNoFocus
4 تكون النافذة في وضع التصغير دون إعطائها التركيز

vbMinimizedNoFocus
5 تكون النافذة في وضع التصغير دون إعطائها التركيز


:

Shell "notepad.exe", vbNormalFocus
تشغيل المفكرة في الوضع العادي


لاحظ انه لم نكتب المسار الكامل للمفكرة لأنها داخل مجلد النظام .

ثانياً - بإستخدام إجراءات API .



الدالة WinExec . وهي تشبه الدالة السابقة :

يتم التصريح عن الدالة بالكود التالي في مديول:

Declare Function WinExec& Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long)

التشغيل:

WinExec("Notepad.exe", vbMaximizedFocus)




تشغيل الملفات الأخرى:

لايمكننا تشغيل الملفات المرتبطة ببرامج خاصة عن طريق الدوال السابقة فوراً .

ولاكن عليك كتابة مسار التطبيق أولاً . ثم مسار الملف المرتبط بالبرنامج. مثال:

Shell "Notepad.exe c:\windows\faq.txt", vbNormalFocus

لوفرضنا أنك لم تعرف البرنامج المرتبط بالملف . فالدالة التالية تقوم بمعرفة البرنامج المقترن وتشغيله:

الدالة ShellExecute.

التصريح عنها : في قسم التصريحات General

Private Declare Function ShellExecute Lib "shell32.dll" Alias _
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation _
As String, ByVal lpFile As String, ByVal lpParameters _
As String, ByVal lpDirectory As String, ByVal nShowCmd _
As Long) As Long

وسيطات الدالة :

hwnd : مقبض النافذة.
lpOperation : احدى المعاملين "Print" للطباعة و "Open" للفتح.
lpFile : اسم الملف لمراد تطبيق العملية عليه.
lpParameters : الوسيطات المراد تمريرها إلى جوار اسم الملف (في حال وجودها).
lpDirectory : اسم المجلد الذي يقع عليه الملف.
nShowCmd : مطابقة للوسيطة windowstyle التابعة للدالة Shell .

مثال:

ShellExecute hwnd, "Open", "Calc.exe", vbNullString, vbNullString, 3

لتشغيل كافة الملفات :

ضع هذا التصريح في قسم General بعد التصريح الأساسي للدالة

Sub ShellDocument(FileName As String)
Dim Ret&
Ret = ShellExecute(hwnd, "Open", FileName, "", "", 1)
If Ret <= 32 Then
Select Case Ret
Case 2&
MsgBox "لم يتم العثور على الملف"
Case 3&
MsgBox "المسار غير موجود"
Case 5&
MsgBox "تعذر الوصول"
Case 8&
MsgBox " ذاكرة غير كافية"
Case 11&
MsgBox "هناك خلل في البرنامج"
Case 32&
MsgBox "مكتبة الربط الديناميكي غير موجودة"
Case 31&
MsgBox "لايوجد برنامج مقترن لفتح هذا الملف"
Case Else
MsgBox "خطأ غير معرف "
End Select
End If
End Sub

للتشغيل هذا الكود :

ShellDocument "c:\windows\faq.txt"


إنتهى درسنا نأمل أنكم إستفدتم

بومبه
06-11-2005, 11:13 AM
Agent

مفهوم Ms Agent :

عندما تفتح أي برنامج من برامج أوفيس أكسس مثلاُ وتطلب المساعدة فإن أول ماينجدك هو مساعد اوفيس . مثل الكلب والقطة أو الكرة :

هذا هو Ms Agent . هل فكرت بأن يكون لبرنامجك مثل هذا المساعد ! في درسنا اليوم ستتعلم كيفة ربط المساعد ببرنامجك إنشاء الله



اولاً : كيف تحصل على العميل ؟

بسيطة : إذا كنت تملك برامج أوفيس فسوف تجد العديد وهي بملحقات acs . أو تحمله من على الإنترنت عن طريق الروابط التالية :

الإسم الحجم
MB3:3 Peedy the Parrot

Genie
1,5 MB

Merlin the Wizard
1,8 MB

Robby the Robot
2,1 MB

James
3,2 MB

Claude the Bear
1,8 MB

Oscar the Cat
1 MB

Plany
3,1 MB

Wartnose
2,9 MB

Milton the Bear
2 MB

Marge
3,1 MB

Cami
602 KB

VRGirl
4,9 KB

Charlie
1,8 MB




بعد تجهيز المساعد عليك وضعه في مجلد البرنامج . ليكن إسمه Genie مثلاً

الأن إفتح الفيجوال بيسك ثم بالزراليمين فوق صندوق الأدوات سوف تجد العنصر Microsoft Agent Control قم بإختياره وأنقر موافق

بعد ذلك ضع الأداة على الفورم . والأن طريقة الربط:



في قسم التصريحات General ضع الكودالتالي :

Dim X As IAgentCtlCharacter

ثم في حدث Load للفورم ضع الكود التالي:

On Error Resume Next
Dim path
Dim file
path = App.path
If Right(path, 1) <> "\" Then path = path + "\"
file = path + "Genie.acs"
Agent1.Characters.Load "x", file
Set X = Agent1.Characters("x")
X.Show

بهذا تكون قد أتممت الربط و ظهر المساعد عند التشغيل .



نأتي الأن إلى أوامر وحركات المساعد :

إظهار نص للمساعد:

X.Speak "مرحبا"

إظهار حركة :

X.Play "save"

ويمكنك تغيير save لأي حركة من حركات المساعد وهي تأتي في ملف ملحق معه .



إخفاء المساعد

X.Hide

إظهار المساعد

X.Show




هذه هي الأساسيات للتعامل مع العميل Ms Agent أرجو أن تكون مفهومة.

بومبه
06-11-2005, 11:14 AM
ملفات التهيئة ini

لتعامل مع ملفات التهيئة هناك مجموعة من الدوال ولفهم طريقة إستخدامها سنشرح وظيفة وتركيب ملفات التهيئة . ومن ملفات التهيئة المشهورة الملفان win.ini و system.ini الخاصان بويندوز ، وعادة ما يكون لكل برنامج ملف تهيئة خاصة به وامتداد ملفات التهيئة هو ini , ويتم بملفات التهيئة حفظ أعداداتك الخاصة بك التي قمت بها عند تشغيل برنامج معين فـقـد تلاحـظ عـنـد دخولك لبرنامج ما انة قد وضع آخر اربعة ملفات قمت بتشغيلها في قائمة ملف ( مثل الورد مثلا ) وكذلك يحفظ كل ما قمت بة من تغيرات لتجدها لم تتغير عند تشغيلة في المرة القادمة فما يقوم بة البرنامج هو حفظ الأعدادات التي قمت بها في ملف تهيئة خاص ، لتتم قرائة في المرة القادمة لتشغيلك البرنامج ووضع اعداداتك التي قمت بها .


الشكل العام لملفات التهيئة :

[Desktop]
Wallpaper = (بلا)
TileWallpaper = 1
.
.
[windows]
run= C:\Scan.exe
load=
BaseCodePage = 1256

لاحظ أن ملف التهيئة يتكون من عدد من الآقسام وأسفل كل قسم عدد من المفاتيح وأمام كل مفتاح قيمتة ، مثلا القسم Desktop يحتوي على مفتاحين ، المفتاح TilrWallpaper قيمتة 1 ، وهذا حال كل ملفات التهيئة .

1 ) الإجراء WritePrivateProfileString و يعلن عنة كالتالي :

Public Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long

وظيفتة :
يستخدم للكتابة لملف التهيئة .
المتغيرات :
lpApplicationName وهو من النوع String وهو يمثل اسم القسم المراد الكتابة بة .
lpKeyName وهو من النوع Any وهو يمثل اسم المفتاح .
lpString وهو من النوع Any وهو يمثل القيمة التي تريد كتابتها.
lpFileName وهو من النوع String وهم يمثل اسم ومسار ملف التهيئة .
القيمة المعادة :
الإجراء يعود بقيمة من النوع Long لاتساوي الصفر في حالة نجاحة ، أما إن فشل الإجراء في اداء المطلوب فسيعود بقيمة تساوي الصفر .
ملاحظات :
عندما تستخدم هذا الإجراء للكتابة إلى ملف تهيئة ، فهناك عدة أحتمالات كأن يكون الملف الذي حددتة غير موجود. في هذة الحالة سيقوم الإجراء بعمل ملف جديد يضع فية ما حددتة لة من قسم ومفتاح وقيمة .
وأما إن كان الملف موجود ، فإنة يفتحة ويبحث عن القسم الذي حددتة ، فإذا لم يجدة فأنة ينشئة ويضع تحتة المفتاح والقيمة التي حددتهما لة . أما إذا وجد القسم فإنة يبحث عن المفتاح الذي حددتة ، فإذا لم يجدة فإنة ينشئة ويضع أمامة القيمة المحددة . أما إذا وجد المفتاح ، فإنة يستبدل القيمة الموجودة أمامة بالقيمة التي حددتها له .

2 ) الإجراء GetPrivateProfileString و يعلن عنه كالتالي :

Public Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

وظيفتة :
يستخدم للقراءة من ملف التهيئة .
المتغيرات :
lpApplicationName وهو من النوع String وهو يمثل اسم القسم المراد الكتابة بة .
lpKeyName وهو من النوع Any وهو يمثل اسم المفتاح .
lpDefault وهو من النوع String وهو يمثل القيمة الافتراضية التي يعود بها الإجراء إن لم يجد المفتاح المحدد .
lpReturnedString وهم من النوع String وهو عبارة عن متغير حرفي يتم تخزين قيمة المفتاح المحدد بها أن وجدة الإجراء .
nSize وهو من النوع Long وهو يمثل حجم المتغير الحرفي .
lpFileName وهو من النوع String وهم يمثل اسم ومسار ملف التهيئة .
القيمة المعادة :
الإجراء يعود بقيمة من النوع Long لاتساوي الصفر في حالة نجاحة تمثل عدد حروف المتغير الذي قراءة ، أما إن فشل الإجراء في اداء المطلوب فسيعود بقيمة تساوي الصفر .


ملاحظة : هذاين الإجراء ين هما الأكثر استخداما مع ملفات التهيئة ، حيث ان الإجراءين WriteProfileString و GetProfileString فهما حاله خاصة من الإجراءين السابقين . فهما يؤديان نفس مهام الإجراءين السابقين ويتطلبان نفس المتغيرات ، ما عدا المتغير الأخير ( اسم ومسار ملف التهيئة ) حين أن هذين الإجراءين سيفترض أنة win.ini ، لذلك فهذا الإجراء يستخدم لتعامل مع الملف wini.ini فقط .


بهذا نكون قد أنهينا الدرس

بومبه
06-11-2005, 11:18 AM
العبارة الشرطية IF



أولاً - العبارة: IF - Then

تستخدم عبارة الشرط If في شروط أي أنه إذا تحقق الشرط عند ذلك إعمل الحدث وإلا أي إذا لم يتحقق ألغي الحدث أو إعمل حدث أخر.

التعليمة البسيطة لعبارة If هي كالتالي:

Statement Then Condition IF
إذا الشرط عندئذ تعليمة


في هذه التعليمة إذا تحقق الشرط تنفذ كل اتعليمات التي بعد كلمة Thenوإذا لم ينفذ الشرط تنفذ التعليمات الواردة على السطر التالي لعبارة الشرط.



هذه الجملة البسيطة . ولاكن هناك جملة IF - Then - Else

وهو عندما يتحقق الشرط نفذ تعليمة ما وإذا لم يتحقق فهناك تعليمة أخرى سوف تنفذ في حال عدم تحقق الشرط.

الشكل العام للتعليمة:

Statement 2 Else Statement 1 Then Condition IF
إذا الشرط عندئذ تعليمة وإلا تعليمة عدم تحقق الشرط
مثال:

ضع أداة النص Text1 و زر أمر Command1 أكتب السطر التالي في حدث الزر:



If Text1 = "kaled" Then Unload Me Else MsgBox "Password Error Try Again"

إذا كان النص المكتوب هو "kaled" عند ذلك أغلق البرنامج وإلا إعرض رسالة الخطأ



ويمكنك أن تضع التعليمة في عدة أسطر:

If الشرط Then

تعليمة

Else

تعليمة عدم تحقق الشرط

End If




إذا كانت التعليمة في عدة أسطر فيجب دائماً أن توجد تعليمة End If في نهاية عبارة IF

مثال

If Text1.text="kaled" Then

Msgbox"تم تسجيل دخولك"

Unload me

Else

Msgbox"الكلمة التي قمت بكتابتهاغير صحيحة "

End If






نهاية الدرس

بومبه
06-11-2005, 11:19 AM
العبارةSelect Case



جملة Select تشبه تقريباً جملة If إلا أنها تستعمل حالات متعددة وفي كل حالة تكتب تعليمة مختلفة.

الشكل العام للعبارة:



Select Case (العنصر)

Case (الحالة)

التعليمة

End select




يمكنك إضافة الكثير من الحالات ولاكن قبل End Select



سوف نعمل مثال بسيط لهذه الجملة.

أضف فورم وأضف الأدوات التالية:

Text1

Label1

Command1

http://www.bwady.com/droos/visualbasic/les3/frmselect.JPG


أنقر فوق الزر نقرتين وأكتب الشيفرة التالية:

On Error GoTo b

Dim a As Integer
a = Text1

Select Case a
Case 0 To 10
Label1 = "سيىء"
Case 10 To 40
Label1 = "ضعيف"
Case 40 To 60
Label1 = "وسط"
Case 60 To 80
Label1 = "جيد"
Case 80 To 100
Label1 = "ممتاز"
End Select

Exit Sub
b:
MsgBox "الرجاء إدخال قيمة عددية ", vbCritical, "خطأ في الكتابة"


شرج الشيفرة السابقة:

السطر الأول : التصريح عن خطأ أسميناه b

السطر الثاني: التصريح عن متحول عددي صحيح a

السطر الثالث: إسناد النص في Text1 إلى المتحول a

السطر الرابع إلى End Select بداية التعليمة Select . أي حدد حالات المتحول a في كل حالة عرض تعليمة مختلفة

السطور التي بعد End Select هي عمل الخطأ أي عرض رسالة عند الخطأ . حاول كتابة نص عادي فسوف تظهر لك الرسالة.

لا حظ أنه أنهينا العبارة ب End Select مثل End If

ويمكنك إستعمال العبارة الشرطية IF ولاكن عليك كتابة الجملة كاملة في كل حالة من الحالات السابقة.



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

بومبه
06-11-2005, 11:20 AM
حلقة التكرار Do



تستعمل جملة التكرار Do لعمل حدث ما بعدد معين .

يجب أن تصرح عن متحول قبلها لكي تعمل الجملة:



Dim a As Integer
Do

a=a+1

التعليمة

Loob Until (a Value)




ربما شرح الجملة غير مفهوم قليلاً . في السطر الأول صرحنا عن متحول عددي

السطر الثاني بداية جملة التكرار

السطر الثالث زيادة قيمة المتحول a في كل حلقة تكرار

السطر الرابع تكتب التعليمة التي تريدها

السطر الخامس هو عدد مرات التكرار وهو سوف يكون قيمة المتحول a مثلاً :a<6 أو a=5

لذلك سوف يتم عمل التعليمة التي كتبتها 5 مرات ولهذا السبب قلنا عليك التصريح عن متحول لأنه دون ذلك سوف تكرر التعليمة إلى مالانهاية.



سوف نعمل مثال للتعرف أكثر على الجملة:



أضف فورم وزر أمر Command أكتب الشيفرة التالية:



Dim a As Integer
Do
a = a + 1
MsgBox a
Print a
Loop Until (a = 9)


تكررا الحدث 9 مرات كما في السطر الأخير a=9




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

بومبه
06-11-2005, 11:21 AM
حلقة التكرار For



حلقة التكرار For مشابهة تقريباً للحلقة السابقة Do

تستعمل لتكرار عمل معين بعدد محدد.

الشكل العام للتعليمة:



For a= القيمة الأولى To القيمة الثانية

الحدث (التعليمة)

Next

ملاحظة :(a) مجرد وسيط يمكنك تغيره






مثال سريع للجملة البسيطة :

For a = 0 To 5
MsgBox "مثال", vbMsgBoxRight, a
Next




في المثال السابق حددنا القيمة الأولى وهي 0 أي قيمة a

ثم حددنا القيمة الثانية وهي 5 .

لذلك سوف يتم عرض الرسالة بقيمة a أي خمس مرات. ودائما تنتهي جملة التكرار ب: Next



ملاحظة: لجملة التكرار For نوعان النوع السابق هو الجملة البسيطة. والآن نأتي إلى الجملة المركبة:

الجملة المركبة تحوي الحلقة الداخلية والحلقة الخارجية . أي حلقة For داخل حلقة For



مثال سريع للجملة المركبة:

For s = 0 To 1

'بداية الحلقة الداخلية
For a = 0 To 2
Print "s="; s, "a="; a
Next
'نهاية الحلقة الداخلية

Print ""
Next






مثال آخر للجملة For

ضع الكود التالي في أداة التوقيت Timerولاتنسى خاصية Interval=100

Dim h
Dim w
h = Me.Height / 2
w = Me.Width / 2
For i = 1 To w
Me.Circle (h, w), i, RGB(Rnd * 100, Rnd * 200, Rnd * 90)
Next






ومن هذا نجد أن حلقة التكرار For هي أبسط وأسهل من جملة التكرار السابقة Do وأي برنامج بسيط يحتاج لأي جملة إما شرطية أو حلقة تكرار.

وبهذا نكون قد إنتهينا من الجمل وحلقات التكرار . أرجو أن أكون قد حققت الفائدة.