PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آموزش جامع و کاربردی برنامه نويسي (Visual Studio 2010)



Borna66
04-27-2011, 06:52 PM
با سلام

در این تاپیک یک سری آموزش های ابتدایی در مورد Visual Studio 2010 ارایه می شود که امیدوارم مورد قبول شما بازدیدکنندگان عزیز قرار بگیرد.



http://pnu-club.com/imported/mising.jpg

باتشکر.طه/ Borna66

Borna66
04-27-2011, 06:52 PM
فهرست

بخش اول: معرفي Visual Studio 2010
بخش دوم: استفاده از كنترل ها
بخش سوم: عملگرها(1)
بخش چهارم: كار با متغيرها(1)
بخش پنجم: عملگرها(2)
بخش ششم: انواع داده
بخش هفتم:دستور If و عملگرهای شرطی

Borna66
04-27-2011, 06:53 PM
Visual Studio 2010 داراي محيط IDE است. محيط IDE محيط توسعه مجتمع مي باشد. اين برنامه زمينه اي را فراهم مي كند تا كاربر بتواند بهترين و قوي ترين برنامه ها را با آن بسازد.
بعد از اينكه برنامه Visual Studio 2010 را نصب كرديد، از مسير زير برنامه را اجرا كنيد:

Start---> All Programs---> Microsoft Visual Studio 2010 ---> Microsoft Visual Studio 2010

اگر براي اولين بار است كه برنامه را اجرا مي كنيد پنجره زير به نمايش در مي آيد كه از شما مي خواهد برنامه پيشفرض و تنظيمات مربوط به آن هنگام اجرا شدن را انتخاب كنيد. البته ممكن است گزينه هاي بيشتري در كادر شما نمايان شود كه مربوط به نصب بيشتر آيتم ها است. گزينه Visual Basic Development Settings انتخاب و سپس Start Visual Studio را بزنيد.


http://pnu-club.com/imported/mising.jpg


شكل 1-1



وارد محيط ويژال خواهيد شد. مانند شكل زير:

.http://pnu-club.com/imported/mising.jpg


شكل 2-1



در اين صفحه آيتم هاي مختلفي وجود دارد كه هر كدام در بخش خاصي استفاده مي شوند. مهمترين آن گزينه هاي سمت چپ يعني New Project و Open Project مي باشد. براي باز كردن برنامه هاي ذخيره شده در سيستم گزينه Open Project و براي ايجاد يك سند جديد گزينه New Project به كار مي رود. روي New Project كليك كنيد.


http://pnu-club.com/imported/mising.jpg


شكل 3-1



در اين پنجره در كادر بالا گزينه Windows Forms Application را انتخاب و در كادر پايين نام برنامه را وارد و OK نماييد.


وارد صفحه اصلي مي شويد:

http://pnu-club.com/imported/mising.jpg


شكل 4-1

Borna66
04-27-2011, 06:53 PM
همانطور كه مشاهده مي كنيد اين محيط داراي نوار منو، نوار ابزار و تعدادي پنجره مي باشد كه تك تك به توضيح هر كدام مي پردازيم.


نوار منو:


http://pnu-club.com/imported/mising.jpg


شكل 5-1



نوار منوي موجود تفاوت چنداني با نوار منوهاي ديگر برنامه ها از جمله Word ، Excel و ... ندارد. نوار منوي ويژوال استوديو به صورت ديناميك مي باشد، يعني بر حسب كاري كه مي خواهيد انجام دهيد يك سري از گزينه ها به منو اضافه شده و يا از آن حذف مي شود. هنگامي كه محيط IDE خالي را در مقابل خود داريد، منوي ويژوال استوديو شامل گزينه هاي File، Edit، View، Data، Tools، Test، Window، Community و منوي Help است. اما هنگامي كه بر روي پرو‍‍ژه اي كليك كنيد گزينه هاي منوي آن مطابق كاري كه مي خواهيد انجام دهيد تغيير مي كند. پس نگران كم و زياد بودن گزينه هاي منوي خود نباشيد.
در اينجا نيازي نه توضيح كامل منوها نداريم، زيرا كاربرد هر يك هنگام استفاده از آن مشخص مي شود، تنها مرور كلي بر روي آن ها خواهيم داشت:
File: اكثر برنامه هاي ويندوزي داراي اين منو هستند. براي باز كردن سند جديد، باز كردن سندهاي قبلي، خارج شدن از برنامه، ذخيره يك فايل يا كل پروژه و ... از اين منو استفاده مي كنند.
Edit: اين منو هم مانند ساير برنامه ها داراي گزينه هايي چون Undo، Redo، Cut، Copy، Past و Delete است.
View: اين منو به شما اجازه مي دهد تا به سرعت به پنجره هاي مورد نياز و پركاربرد ازجمله Solution Explorer، پنجره Properties، پنجره Output، Toolbarها و .. دسترسي داشته باشيد.
Project: اين منو عمليات مربوط به پرو‍ژه ها را انجام مي دهد. براي مثال مي توانيد فرم هاي جديد و يا كلاس ها را به برنامه خود اضافه كنيد.
Build: اين منو زماني مفيد خواهد بود كه بعد از تمام كردن برنامه بخواهيد آن را بدون استفاده از محيط ويژال بيسيك اجرا كنيد.
Debug: برنامه نويسان حرفه اي با اين منو سر و كار بيشتري دارند. اين منو به شما اجازه مي دهد تا خط به خط برنامه را اجرا كنيد و خطاهاي آن را بيابيد.
Data: كاربرد اين منو در استفاده از بانك هاي اطلاعاتي مي باشد.
Format: زماني كه روي فرم ها كار مي كنيد با اين منو مي توانيد طريقه قرار گرفتن اشياي موجود در فرم را تنظيم كنيد.
Tools: در اين قسمت مي توانيد محيط IDE را كنترل و يا تنظيم كنيد. همچنين لينكي به برنامه هاي اضافي نصب شده در كنار ويژوال استوديو نيز در اين قسمت وجود دارد.
Test: منوي Test به شما اجازه مي دهد برنامه هايي ايجاد كنيد تا به وسيله آن بتوانيد بعد از اتمام يك برنامه قسمت هاي مختلف آن را از نظر كارايي و يا عملكرد بررسي كنيد.
Windows: اين منو در همه برنامه ها امكان نمايش يا عدم نمايش پنجره ها را مي دهد.
Community: دسترسي به منابع برنامه نويسي، مكان هايي براي پرسيدن سوالات و نيز جستجوي بين نمونه كدها را در اينترنت فراهم مي كند.
Help: منوي Help به شما اجازه دسترسي به مستندات ويژوال استوديو را مي دهد. اين منو همچنين داراي گزينه هايي براي وصل شدن به وب سايت مايكروسافت، دريافت آخرين نسخه بروز رساني و همچنين گزارش دادن مشكلات برنامه است.

Borna66
04-27-2011, 06:54 PM
نوار ابزار:
نوار ابزارهاي زيادي در IDE ويژوال استوديو وجود دارد، كه امكان دستيابي سريع به گزينه ها را مي دهد. براي اضافه يا حذف كردن اين نوارها مي توانيد از منوي View استفاده كنيد.
در زير توضيحات كلي از نوار ابزار استاندارد براي شما گفته شده است. لازم به يادآوري است كه كم و زياد بودن آيتم ها مربوط به اين است كه فوكوس روي كدام شي است.(شيي كه فوكوس داشته باشد از بقيه اشيا پررنگ تر است، براي دادن فوكوس به شيي روي آن كليك كنيد.)




http://pnu-club.com/imported/mising.jpg


شكل 6-1


با كليك روي فلش سمت راست نوار ابزار مي توانيد نمايش يا عدم نمايش آيتم ها را تنظيم كنيد.
نكته: اگر فراموش كرديد هر گزينه چه كاري انجام مي دهد اشاره گر ماوس خود را روي آن ببريد(كليك نكنيد) بعد از چند ثانيه توضيح كوتاهي به شما نمايش مي دهد كه مي تواند كمك زيادي به شما كند.

Borna66
04-27-2011, 06:54 PM
پنجره ها:
همان طور كه در شكل 4 مي بينيد، تعدادي پنجره در صفحه وجود دارد كه هركدام كاربرد خاصي دارند، اين پنجره ها پركاربردترين آن ها است، بقيه پنجره ها را مي توانيد از طريق منوي Window به صفحه اضافه كنيد.
حال به توضيح مختصري از پنجره ها مي پردازيم:
Form: مهمترين پنجره، پنجره Form است. اين پنجره فرمي خامي در اختيار شما قرار مي دهد كه بتوانيد هنگام ايجاد برنامه ها اشيا خود را روي اين صفحه قرار دهيد.

http://pnu-club.com/imported/mising.jpg

شكل 7-

Borna66
04-27-2011, 06:57 PM
ToolBox : اين پنجره را در سمت چپ صفحه خود مشاهده مي كنيد. كه شامل مجموعه ي كاملي از كنترل ها و كامپوننت هايي است، كه مي توانيد به برنامه خود اضافه كرده و با استفاده از آن پنجره برنامه هاي خود را طراحي كنيد.


http://pnu-club.com/imported/mising.jpg


شكل 8-1

Borna66
04-27-2011, 06:57 PM
Properties: اين پنجره در برنامه بسيار كاربرد دارد. وظيفه آن نيز نمايش مشخصات و ويژگي هاي مربوط به هر شي يا فرم مي باشد. فوكوس روي هر شي باشد، اين پنجره مشخصات كاملي از آن را ارائه مي كند كه با تغيير ويژگي هاي آن، در برنامه عمل خاصي انجام مي شود. اگر روي علامت فلش رو به پايين كليك كنيد، نام هر شي يا فرمي را كه در صفحه وجود دارد، را مي بينيد، و مي توانيد مستقيما آن را انتخاب كنيد.


http://pnu-club.com/imported/mising.jpg


شكل 9-1

Borna66
04-27-2011, 06:59 PM
Solution Explorer: اين پنجره ليست كاملي اي از راه حل ها را نشان مي دهد. يك راه حل مي تواند شامل چندين پروژه باشد كه هر يك از اين پروژه ها شامل فرم ها، كلاس ها، ماژول ها، و يا كامپوننت هايي باشند كه يك مسئله خاص را حل مي كند. در بخش هاي بعدي در مورد اين راه حل ها صحبت خواهيم كرد.


http://pnu-club.com/imported/mising.jpg


شكل 10-1




اميدوارم از مطالب ارائه شده بهره كافي را ببريد. فراموش نكنيد اين مطالب به ظاهر ساده پايه و اساس آموزش است. اگر برنامه نويس به محيطي كه مي خواهد در آن برنامه بنويسيد مسلط نباشد در رسيدن به هدفش موفق نخواهد شد.

Borna66
04-27-2011, 06:59 PM
بخش دوم: استفاده از کنترل ها
توضیح کنترل ها را با چند مثال شرح می دهیم:
مثال 1 : ساختن پروژه Hello User
1- ابتدا پروژه ی جدید ایجاد کنید. (سعی کنید هنگام ایجاد هر برنامه پروژه جدید ایجاد کنید تا از اختلال با پروژه های فبلی جلوگیری شود.)
2- بعد از ایجاد سند جدید آن را ذخیره کنید تا هنگام قطعی برق کامپیوتر برنامه های شما از بین نرود. برای این کار از منوی File گزینه Save All را بزنید(و یا کلیدهای ترکیبی Ctrl + Shift + S را بزنید.)
پنجره ای مانند شکل زیر نمایان می شود.


.
http://pnu-club.com/imported/mising.jpg


شکل 1-2


در این پنجره در کادر جلوی Name نام پروژه ی خود را بنویسید. مثلا Project-HelloUser و از کادر میانی مسیر ذخیره برنامه را تعیین کنید. نکنه مهم این ذخیره سازی مربوط به کادر آخر و گزینه Create Directory for Solution است.
در ویژوال بیسیک ما با دو عبارت Project و Solution برخورد می کنیم. Project به مجموعه ای از قایل ها، مستندات و تصاویر گفته می شود که هدف خاصی را دنبال می کنند. Solution به مجموعه ای از Project ها گفته می شود که با یکدیگر یک برنامه را می سازد. پس یک Solution می تواند شامل چندین Project باشد.
با توضیحات گفته شده اگر تیک گزینه Create Directory for Solution را بزنید برنامه پوشه ای در مسیر تعیین شده برای Solution ها می سازد. و اگر تیک این گزینه را بردارید یعنی نمی خواهید Solution جدید بسازید و پروژه را در Solution های قبلی ذخیره می کنید. اگر این گزینه را تیک زدید نامی متناسب برای Solution نیز انتخاب کنید. سپس کلید OK را بزنید.
3- سپس نام فرم برنامه را تغییر دهید. برای اینکار در پنجره Solution Explorer روی Form1 کلیک کنید. همزمان با آن محتویات پنجره Properties در پایین آن تغییر می کند، در قسمت File Name عبارت Form1 را به HelloUser تغییر دهید. همچنین برای تغغیر نام یک فرم می توانید روی فرم کلیلک کنید. در پنجره Properties روی مشخصه File Name د کادر جلوی آن نام مورد نظر خود را تایپ کنید و Enter را فشار دهید.(برای تغییر نام هر شی یا کنترل نیز به هیمن صورت روی کنترل مورد نظر کلیک و تغییر File Name آن امکان پذیر است.)


.http://pnu-club.com/imported/mising.jpg


شکل 2-2



4- همان طور که می بینید عنوان فرم همچنان Form1 است. زیرا مشخصه ای تغییر دادیم مربوط به نام فرم بود، نه عنوان آن. برای تغییر عنوان روی فرم کلیلک کنید سپس در پنجره Properties خاصیت Text را انتخاب و نام مورد نظر برای این مثال بنویسید Hello User را تایپ کنید سپس کلید Enter را فشار دهید. عنوان فرم نیز به Hello User تغییر کرد.
5- حال با استفاده از دکمه Start Debugging(مثلث سبز رنگ در نوار ابزار و یا کلید F5) برنامه رو اجرا کنید. فرم در حالت اجرا به نمایش در خواهد آمد.


http://pnu-club.com/imported/mising.jpg


شکل 3-2



.http://pnu-club.com/imported/mising.jpg


شکل 4-2



خیلی ساده بود، و عمل خاصی انجام نمی داد. برای خارج کردن برنامه از حالت اجرا از دکمه Stop Debugging(علامت مربع در نوار ابزار و یا کلید های ترکیبی Alt + Ctrl + Break را بزنید.). همچنین می توانید با زدن علامت ضربدر فرم، برنامه را از حالت اجرا خارج کنید.
برنامه را محاوره ای تر می کنیم. برای این کار نیاز به تعدادی کنترل روی فرم داریم. دو دکمه(Button)، یکلیبل(Lable)و یک کادر متن(TextBox). یکی از مزیت های Visual Basic این است که شما می توانید بدون اینکه کدی بنویسید مقدار زیادی از برنامه خودتان را طراحی کنید. البته برای آن ها کد نوشته می شود ولی این کد نویسی از دید شما مخفی است و ویژوال بیسیک آن ها را برای شما می نویسد.
برای اضافه کردن جعبه ابزار به فرم باید پنجره ToolBox (شکل ؟؟ در بخش اول)در صفحه وجود داشته باشد، اگر وجود نداشت برای دسترسی به آن سه راه وجود دارد:
1- از طریق منوی View گزینه Toolbox را انتخاب کنید.
2- از نوار ابزار استاندارد آیکون مربوط به آن را انتخاب کنید.
3- کلیدهای Ctrl+Alt+X را فشار دهید.
بدین ترتیب جعبه ابزار در قسمت چپ IDE نمایش داده می شود. جعبه ابزار شامل کنترل ها و کامپوننت هایی می شود که می توانید روی فرم خود قرار دهید. کنترل ها مانند دکمه ها، کادرهای متنی، دکمه های رادیویی و یا لیست های ترکیبی. شما در برنامه Hello User فقط به کنترل های قسمت Common Controls در جعبه ابزار نیاز است.

Borna66
04-27-2011, 07:01 PM
مثال 2 : اضافه کردن کنترل ها به برنامه Hello User
1- یک کنترل لیبل به فرم اضافه کنید. برای این کار، در جعبه ابزار روی کنترل Label کلیک کنید و سپس روی فرم رسم کنید. روش دیگر این است که روی کنترل دابل کلیک کنید. که در این صورت کنترلی به اندازه پیشفرض به فرم شما اضافه خواهد شد.




http://pnu-club.com/imported/mising.jpg


شکل 5-2



اگر از مکان و اندازه کنترل لیبلی که روی فرم قرار داده اید ناراضی هستید می توانید آن را انتخاب و در هر قسمت فرم که بخواهید درگ کنید. و برای تغییر اندازه هم نگران نباشید چون لیبل اندازه خود را با متنی که درون آن قرار دارد هماهنگ می کند. برای سایر کنترل ها برای تغییر اندازه از گیره های اطراف آن استفاده کنید.
2- بعد از رسم یک کنترل بر روی فرم، حداقل باید نام و متنی که نمایش می دهد را اصلاح کنید. با انتخاب کنترل لیبل بر روی فرم، مشاهده خواهید کرد که پنجره Properties خاصیت Label را نشان می دهد. خاصیت Text این کنترل را به Enter Your Name تغییر دهید. توجه کنید که با فشار کلید Enter و یا کلیک در خارج از خاصیت مورد نظر، اندازه لیبل به صورتی تغییر می کند تا متن شما را در خود جای دهد. حالا خاصیت Name کنترل را به lblName تغییر دهید.




http://pnu-club.com/imported/mising.jpg


شکل 6-2



3- حالا دقیقا زیر کنترل Label یک کنترل Text Box قرار دهید تا بتوانید در آن نام را وارد کنید. برای اضافه کردن یک Text Box به فرم همانند لیبل عمل کنید. اما این بار به جای کنترل Label روی کنترل Text Box دابل کلیک کنید تا به فرم اضافه شود. با استفاده از پنجره Properties خاصیت Name آن را به txtName تغییر دهید. به دستگیره های تنظیم اندازه در سمت چپ و راست کنترل توجه کنید. به وسیله آن ها می توانید اندازه افقی کنترل را تغییر دهید.


http://pnu-club.com/imported/mising.jpg


شکل 7-2



4- در سمت چپ پایین فرم، به همان صورت که Label و یا کنترل Text Box را بر روی فرم قرار دادید، یک کنترل Button هم اضافه کنید. سپس خاصیت Name آن را به btnOK و خاصیت Text آن را به &OK تغییر دهید.
کاراکتر & که در خاصیت Text دکمه های فرمان استفاده می شود، برای ایجاد Shortcut برای آن دکمه است. حرفی که کاراکتر & قبل از آن قرار می گیرد، به صورت زیر خط دار نمایش داده می شود. بدین ترتیب کاربر می تواند به جای کلیک ماوس روی دکمه، با فشار کلید Alt و حرف مشخص شده، کلید مورد نظر را انتخاب کند.(در بعضی مواقع، تا کاربر کلید Alt را فشار ندهد، حرف مورد نظر زیر خط دار نمی شود.) برای این مثال با فشار دادن Alt + O همانند کلیک کردن بر روی دکمه OK است.
5- حالا دکمه دوم را همانند دکمه اول به گوشه سمت راست، پایین فرم اضافه کنید. به محض اینکه دکمه مورد نظر را به گوشه سمت راست فرم ببرید، خطوطی نمایان می شودکه که با کمک آن ها می توانید کنترل جدید را با کنترل های قبلی تراز کنید. به وسیله این خط می توانید کنترل جدید را دقیقا در سمت چپ، راست، بالا و یا پایین یک کنترل خاص قرار دهید. خاصیت Name کنترل جدید را به btnExit و خاصیت Text آن را به E&Xit تغییر دهید.


http://pnu-club.com/imported/mising.jpg


شکل 8-2



قبل اینکه این برنامه را برای اجرا آماده کنید، اجازه دهید به مختصر کدی که در این برنامه نیاز است را توضیح دهیم.

Borna66
04-27-2011, 07:02 PM
شانه گذاری مجارستانی تغییر یافته:
احتمالا متوجه شده اید که کنترل هایی که تاکنون ایجاد کرده ایم، ساختار نام جالبی دارند. تمامی آن ها دارای یک پیشوند هستند که نوع کنترل را مشخص می کند. این کار باعث می شود که هنگام کدنویسی به راحتی نوع کنترلی که با آن کار می کنید را تشخص دهید. مثلا فرض کنید در برنامه خود یک کنترل دارید که نام آن Name است، بدون هیچ پیشوندی از قبیل lbl، یا txt. چطور می خواهید تشخیص دهید که این کنترل، یک کادر متن(TextBox) است که نام را از کاربر دریافت می کند یا یک لیبل که یک عبارت مربوط به نام را در فرم نمایش می دهد؟ فرض کنید در مثال 2 کنترل Label را Name1 و کنترل TextBox را Name2 نام گذاری می کردیم. به این ترتیب مسلما گیج کننده بود. اگر بعد از چند ماه نیز به برنامه مراجعه کنید دستیابی به کنترل مورد نظر مشکل خواهد شود.
هنگامی که با چند برنامه نویس به صورت گروهی کار می کنید، این مورد که استیل و قالب برنامه را به صورت ثابت و مشخصی نگه دارید، مهم خواهد شد. یکی از عمومی ترین ساختار نام برای کنترل ها در برنامه نویسی به هر زبانی، توسط چارلز سیمونی به وجود آمد که قبل از پیوستن به مایکروسافت برای شرکت XPARC کار می کرد. او پیشوندهای کوتاهی را به وجود آورد که برنامه نویسان با استفاده از آن ها می توانستند به راحتی تشخیص دهند که هر متغیر چه نوع داده ای را نگهداری می کند. به دلیل اینکه دکتر سیمونی اهل مجارستان بود و این پیشوندها هم مقداری مانند یک زبان خارجی می ماندند، نام "نشانه گذاری مجارستانی" بر روی این سیستم ماند. همچنین به دلیل اینکه سیستم معرفی شده برای زبان های C و C++ به کار می رفت، در ویژوال بیسیک "نشانه گذاری مجارستانی تغییر یافته" نامیده شد.
در زیر لیستی از پیشوندهایی است که به شما پیشنهاد می کنم در این آموزش از آن ها استفاده کنید.


دکمه فرمانButton
btn


جعبه ترکیبیComboBox
cbo



جعبه انتخابCheckBox
chk


لیبلLabe
lbl


جعبه لیستListBox
lst


منوی اصلیMenu
mnu


دکمه رادیوییRadioButton
rdb


جعبه تصویرPictureBox
pic


جعبه متنیTextBox
txt

Borna66
04-27-2011, 07:03 PM
ویرایشگر کد:
حالا که فرم Hello User را ایجاد کرده اید باید مقداری کد به آن اضافه کنید تا کارهای مورد نظر را برایتان انجام دهد. تا کتون دیده اید که اضافه کردن یک کنترل به فرم تا چه حد ساده است. فراهم کردن یک کارایی خاص برای این کنترل ها به وسیله کد نیز، زیاد سخت نیست. برای اضافه کردن کد به کنترل مورد نظر کافی است روی آیکن موجود در پنجره Solution Explorer کلیک کنید و یا روی کنترل مورد نظر دابل کلیلک کنید، تا صفحه ویرایشگر به نمایش درآید.




http://pnu-club.com/imported/mising.jpg


شکل 9-2


دقت کنید یک زبانه به زبانه های بالای صفحه اصلی اضافه شد. حالا در محیط ویژوال استودیو به دو پنجره Code و Design دسترسی دارید. برای طراحی ظاهر و رابط کاربری باید از قسمت Design و برای نوشتن کد باید از قسمت Code استفاده کنید. توجه کنید که ویژوال استودیو برای کد مربوط به یک فرم، یک فایل مجزا ایجاد می کند. قسمت های بصری و قسمت هایی که به ظاهر فرم مربوط هستند در فایلی به نام HelloUser.Design.vb و کدهای مربوط به چگونگی عملکرد فرم در HelloUser.vb قرار می گیرند. این مورد خود یکی از دلایلی است که موجب راحتی برنامه نویس با ویژوال بیسیک می شود. با استفاده از قسمت Design می توانید ظاهر برنامه خود را طراحی کنید، سپس با استفاده از قسمت Code کد مربوط به فرم را بنویسید.
قسمت مهم دیگر در پنجره مربوط به کد، دو جعبه ترکیبی موجود در بالای صفحه است. به وسیله این دو می توانید به سرعت به قسمت های مختلف فرم خود دسترسی داشته باشید. اشاره گر ماوس خود را روی جعبه ترکیبی سمت چپ ببرید و مقداری بر روی آن نگه دارید. راهنمایی ظاهر شده و می گوید این کادر، مربوط به Types است. اگر این لیست را باز کنید لیستی از تمامی کلاسهای موجود در فرم خود را مشاهده خواهید کرد. اگر اشاره گر خود را روی جعبه ترکیبی سمت راست ببرید، راهنمایی ظاهر شده و به شما می گوید که این قسمت مربوط به Members است. اگر این لیست را باز کنید، نام تمام توابع و زیر برنامه هایی که در کلاس انتخاب شده در سمت چپ قرار دارند را خواهید دید. اگر فرم جاری محتوی مقدار زیادی کد است، به وسیله این قسمت می توانید به راحتی بین توابع آن جابه جا شوید.


ادامه مثال 2 :
6- برای شروع اضافه کردن کد به برنامه بر روی قسمت Design در پنجره اصلی کلیک کنید تا بار دیگر قسمت طراحی را ببینید. سپس روی دکمه OK دابل کلیلک کنید. پنجره ی کد با کدی که در زیر نوشته شده است باز می شود، این کد به صورت اتوماتیک نوشته شده است، پوسته یا قالب رویداد Click برای کنترل Button است.




http://pnu-club.com/imported/mising.jpg
شکل 10-2


رویداد Click برای کنترل Button می گوید:«زمانی که من روی دکمه Button کلیک کردم چه کاری انجام شود.»
این کد به عنوان کنترل کننده رویداد(Event Handler) و یا زیر برنامه رویداد(Event Procedure) نامیده می شود.
در کلمات بالا کلمات Sub و یا Private نمونه ای از کلمات کلیدی در ویژوال بیسیک هستند. در اصطلاحات برنامه نویسی، کلمات کلیدی(Key Words) کلماتی هستند که به ویژوال بیسیک می گویند کارهای خاصی را انجام دهد. همچنین شما نمی تواند از کلمات کلیدی برای نام گذاری متغیرها و کنترل ها در برنامه استفاده کنید. مثلا در این جا، کلمه sub نشان دهنده این است که تابع تعریف شده هیچ مقداری را بر نمی گرداند. همه کدهایی که شما در بین خطوط Private Sub و End Sub بنویسید، تابع رویداد مربوط به OK را تشکیل می دهد.
در بخش های آتی در مورد این مباحث گفتگو خواهیم کرد.
حالا کدهای مشخص شده در این قسمت را در تابع وارد کنید.(در بین آکولادها بنویسید)


http://pnu-club.com/imported/mising.jpg
شکل 11-2





http://pnu-club.com/imported/mising.jpg
شکل 12-2


در ویژوال بیسیک یک خط کد را می توانید با علامت زیر خط(_) مشخص کنیدکه دستورات این خط همچنان ادامه دارد. البته قبل از این زیر خط باید یک فاصله(Space) وجود داشته باشد.
7- بعد از اینکه کد را وارد کردید، مجددا به قسمت Design برگردید و روی دکمه Exit دابل کلیلک کنید تا پنجره کد مربوط به آن ظاهر شود. کد زیر را در زیر تابع btnExit_Click وارد کنید.


http://pnu-club.com/imported/mising.jpg
شکل 13-2




http://pnu-club.com/imported/mising.jpg
شکل 14-2


کلمه Me یک کلمه کلیدی در ویژوال بیسیک است که به فرم کنونی اشاره می کند. که در اینجا به فرم HelloUser اشاره می کند.
حالا که کدنویسی برنامه به پایان رسید زمان تست کردن آن است و می توانید ساخته خودتان را مشاهده کنید.
روی دکمه Start کلیک کنید تا برنامه اجرا شود.
در این مرحله ویژوال بیسیک در حال کامپایل(Compile) برنامه شما است. کامپایل کردن به مرحله ای گفته می شود که در آن از کد ویژوال بیسیک که توسط شما نوشته شده است، به کدی تبدیل می شود که برای ماشین(کامپیوتر) قابل فهم باشد تا بتواند آن را اجرا کند.
اگر در مرحله کامپایل کردن، با هر خطایی در کد مواجه شود، آن را به عنوان یک وظیفه در پنجره Task List نمایش می دهد. با دابل کلیلک روی وظیفه مورد نظر در بخش Task List به قسمتی از کد که به آن مرتبط است، منتقل می شوید.
بعد از اینکه برنامه اجرا شد، صفحه اصلی آن نمایش داده می شود. یک نام را در TextBox وارد کنید و کلید OK را بزنید.(و یا کلیدهای Alt + O را فشار دهید.)
پنجره ای که به کادر پیغام(MessageBox) معروف است، نمایش داده خواهد شد و به شخصی که نام او را در TextBox وارد کرده اید خوش آمد می گوید.





http://pnu-club.com/imported/mising.jpg


شکل 15-2



بعد از اینکه کادر پیغام را با کلیک کردن روی دکمه OK بستید، روی دکمه Exit در فرم کلیلک کنید. برنامه بسته خواهد شد و وارد محیط ویژوال بیسیک می شوید.

Borna66
04-27-2011, 07:04 PM
برنامه چگونه کار می کند؟
کدی که در رویداد Click برای دکمه OK وارد کرده اید، نام کاربری را که در TextBox فرم وارد شده است را دریافت کرده و آن را به عنوان بخشی از پیغام نشان می دهد.
خط اولی که در کد مربوط به این رویداد نوشته شد ه است، فقط یک توضیحی است که به رنگ سبز نمایش داده می شود.


http://pnu-club.com/imported/mising.jpg


شکل 16-2


این توضیح برای راهنمایی کردن برنامه نویسی که روی پروژه کار می کند و یا کسی که بعدها می خواهد کد برنامه را بخواند نوشته می شود و توسط کامپیوتر خوانده نمی شود(یعنی به عنوان بخشی از برنامه اجرا نخواهد شد.). توضیحات در ویژوال بیسیک با (`) مشخص می شوند و هر متنی که بعد از این کاراکتر وارد شود هنگام کامپایل نادیده گرفته می شود.در بخش های آینده در مورد اضافه کردن توضیحات مطالب بیشتری گفته خواهد شد.
تابع MessageBox یک پیغام را در صفحه نمایش می دهد.


http://pnu-club.com/imported/2011/04/105.gifThis image has been resized. Click this bar to view the full image. The original image is sized 696x19.http://pnu-club.com/imported/mising.jpg
شکل 17-2


این تابع پارامترهای مختلفی را دریافت می کند. مثلا در برنامه قبلی یک رشته متنی را به تابع فرستادید تا در صفحه نمایش داده شود. رشته متنی شما از اتصال دو مقدار ثابت متنی که در علامت نقل قول(”)(یعنی Hello! و "Welcome to Visual Basic 2010") قرار گرفته بود تشکیل می شد. برای اتصال چند رشته متنی به یکدیگر وایجاد یک رشته طولانی از علامت اند(&) استفاده کنید.
در حقیقت، کدی که بعد از خط توضیحات در برنامه قبلی آمده است، ثابت رشته ای"Hello" را با مقدار خاصیت Text مربوط به کنترل txtName جمع کرده و عبارت "Welcome to Visual Basic 2010" را به رشته حاصل اضافه می کند.
پارامتر دوم(یعنی اخر خط "Hello User Message")که به متد MessageBox.Show فرستاده شده است، توسط تابع به عنوان متنی که باید در نوار عنوان پنجره نمایش داده شود استفاده می شود.
نکته دیگری که در این کد مهم است این است که یک دستور را در چند خط نوشته ایم. این کار هنگامی که می خواهیم یک دستور طولانی را وارد کنیم بسیار مفید است. همانطور که ذکر شد، در ویژوال بیسیک می توان با استفاده از کاراکتر زیرخط، یک دستور را در چند خط وارد کرد. این کاراکتر به کامپایلر می گوید که ادامه دستور در خط بعدی وارد شده است.
کد بعدی که مربوط به رویداد Click برای دکمه Exit بود. برای خروج از برنامه به راحتی کد Me.Close() را نوشتید. همانطور که قبلا هم توضیح داده شد، کلمه کلیدی Me، به فرمی که هم اکنون در آن هستیم اشاره می کند. متد Close از فرم جاری، باعث می شود که فرم بسته شده و تمام منابعی که سیستم در اختیار آن قرار داده است آزاد شوند، بنابراین فرم(و در نتیجه برنامه) بسته می شود.
احتمالا قسمت های زیادی از نوشته های بالا را متوجه نشده اید و یا برایتان نامفهوم است. اما اصلا جای نگرانی نیست، در بخش های بعدی تمام این موارد به تفصیل توضیح داده خواهند شد.


توضیح برخی خصوصیات در پنجره Properties
تعداد زیادی صفت در این پنجره وجود دارد، که فعلا به چند خصوصیت که کاربرد زیادی دارند اشاره می کنیم.
Font: این ویژگی به شما امکان می دهد اندازه و فونت متن نوشته شده را تغییر دهید.
Forcolor: این ویژگی برای تغییر رنگ متن استفاده می شود.
Backcolor: این ویژگی برای تغییر رنگ پس زمینه کنترل یا فرم استفاده می شود.


تمرین این بخش:
1- فرمی طراحی کنید که شامل دو دکمه یکی Show و دیگری Close، یک کادر TextBox و یک لیبل باشد. که سن کاربر را در کادر TextBox دریافت کند،سپس با کلیک روی دکمه Show متن موجود در TextBox را در کادر پیغام نشان دهد و با کلیک روی دکمه Close پنجره بسته شود. همچنین رنگ پس زمینه لیبل و فرم به رنگ روشن و متن موجود در لیبل و TextBox به رنگ تیره باشد.

Borna66
04-27-2011, 07:05 PM
معرفی عملگر مساوی(=)
در عبارت a+b=c ، هرکدام از a ، b و c یک عملوند هستند. و علامت "=" ، و" +" هر کدام یک عملگر. عملگرها باعث تغییر در عملوندها می شوند، در بخش های بعد راجع به این موضوع بیشتر صحبت خواهیم کرد. موضوع مورد بررسی در این بخش عملگر = است.
عملگر مساوی کاربرد فراوانی در برنامه نویسی دارد. که یکی از مهترین آن ها عمل انتساب است:
برای مثال شما دو کنترل TextBox دارید به نام های P1 و P2 و می خواهید محتویات P1 را در محتویات P2 بریزید. برای این کار از دستور زیر استفاده می کنید:


P2.text = P1.text



کلمه ی text که بعد از P1 و P2 آمده، همان مشخصه Text در پنجره Properties است. با این کار به برنامه می گوید که در P1 هرچه است، داخل P2 کپی کن. به عبارت دیگر محتویات P2 را مساوی محتویات P1 قرار بده.


مثال 1: برنامه ای بنویسید که با زدن دکمه Copy محتویات TextBox را در Label کپی کند.
1- ابتدا پروژه جدیدی ایجاد کنید و نام آن را Copy بگذارید.
2- فرمی طراحی کنید که شامل دو دکمه، یک TextBox و یک کنترل Label باشد.
3- Name هر کنترل را طبق زیر تغییر دهید.
لیبل را lblPaste ، نام یکی از دکمه ها را btnCopye ، نام دکمه دیگر را btnEnd و نام Textbox را txtCopy بگذارید.
4- مشخصه Text دکمه btnCopy را Copy و دکمه btnEnd را Exit قرار دهید. عنوان فرم را نیز با مشخصه Text آن Copy قرار دهید.مانند فرم زیر:


http://pnu-club.com/imported/mising.jpg


شکل 1-3



5- روی دکمه btnCopy دابل کلیک کنید تا پنجره کد نویسی باز شود. سپس کد زیر را بین آکولادها بنویسید:



http://pnu-club.com/imported/mising.jpg


شکل 2-3






http://pnu-club.com/imported/mising.jpg


شکل 3-3



6- روی دکمه btnEnd دابل کلیک کنید و دستور زیر را برای خارج شدن از برنامه بنویسید:


http://pnu-club.com/imported/mising.jpg
شکل 4-3






http://pnu-club.com/imported/mising.jpg


شکل 5-3



7- برنامه را اجرا کنید.
بعد از اجرای برنامه، داخل TextBox کلمه ای تایپ کنید و دکمه Copy را بزنید. مشاهده خواهید کرد، محتویات Text داخل Label قرار می گیرند.


برنامه چگونه کار می کند؟
در خط


http://pnu-club.com/imported/mising.jpg
شکل 6-3



به برنامه می گوید که با رویداد کلیک دکمه Copy (وقتی روی دکمه کلیک شد) محتویات txtCopy را در lblPaste قرار بده.


نکته: این دستور برای تمام کنترل هایی که مشخصه Text در پنجره Properties دارند قابل انجام است. مانند فرم، دکمه های رادیویی، لیست ها و ... .


تمرین:
- فرمی طراحی کنید شامل 4 دکمه که مشخصات هر یک به صورت زیر باشد:
دکمه یک که مشخصه Name آن btnForm و مشخصه Text آن Show Form باشد.
دکمه دو که مشخصه Name آن btnMessage و مشخصه Text آن Show Message Box باشد.
دکمه سه که مشخصه Name آن btnLabel و مشخصه Text آن Show Label باشد.
دکمه چهار که مشخصه Name آن btnExit و مشخصه Text آن Exit باشد.
- این فرم دارای دو Label طبق مشخصات زیر:
Label یک که مشخصه Name آن lblQuestion و مشخصه Text آن What Yor Name? باشد.
Label دو که مشخصه Name آن lblShow و مشخصه Text آن Show باشد.


- و یک کنترل TextBox که مشخصه Name آن txtName باشد.
- دسترسی Shortcut دکمه Exit را حرف t قرار دهید.
- برنامه به این صورت کار کند که کاربر نام خود را در txtName بنویسد. بازدن دکمه Show Form نام کاربر را در عنوان فرم نمایش دهد. با زدن دکمه Show Message Box نام کاربر را در پنجره پیغام نشان دهد، با زدن دکمه Show Label نام کاربر را در lblShow نشان دهد.
و با زدن دکمه Exit یا Alt + t از برنامه خارج شود.

Borna66
04-27-2011, 07:06 PM
بخش چهارم: كار با متغيرها(1)

متغییر
متغییر(Variable) مکانی در حافظه است که برای نگهداری یک مقدار مورد استفاده قرار می گیرد. مقداری که در متغییر قرار داده می شود، قابل تغییر است، نام آن نیز بر همین ویژگی دلالت دارد. وقتی یک مقدار در متغییر قرار می دهید، مقدار قبلی آن از بین خواهد رفت.
متغییرها با نامشان شناخته می شوند، بنابراین در یک قسمت از برنامه، استفاده از دو متغییر با نام یکسان مجاز نیست. زیرا ویژوال بیسیک قادر به تشخیص آن ها نخواهد بود.
بر خلاف کنترل ها که ویژوال بیسیک نام پیشفرض برای آن ها درنظر می گیرد، مانند Label1، Label2 و ...نامگذاری برای متغییر ها از همان ابتدا به عهده شما(برنامه نویس) خواهد بود.
قیبل از استفاده از متغییرها باید آن ها اعلان(تعریف) کنید. اعلان متغییر یعنی نامگذاری روی آن ها و تعیین نوع داده ای که قرار است در متغییر قرار گیرد.
برای تعریف متغییر از کلمه کلیدی Dim استفاده می شود.
خط زیر را درنظر بگیرید:


Dim intNumber As Integer


در این خط:
Dim: کلمه ی کلیدی است که به ویژوال بیسیک می گوید: قرار است یک متغییر تعریف شود.
intNumber: نام متغییر است.
As: کلمه کلیدی که می خواهد نوع متغییر را مشخص کند.
Integer: نوع متغییر می باشد.
توجه کنید در نامگذاری متغییرها، از قانون مجارستانی پیروی می کنیم.برای مثال در این عبارت intNumber، int مخفف integer است و مشخص می کند که این متغیر یک عدد صحیح در خود نگهداری می کند.
فاصله(Space) در نام متغیر مجاز نیست.مثال: int Number غلط است.
باید باید با یکی از حروف الفبا آغاز شود. مثال: 2Number غلط است.
برای نام متغیرتان هر نام دلخواهی می توانید انتخاب کنید، ولی بهتر است برای خوانایی برنامه از نام های با معنی مربوط به کاری که انجام می دهند باشد.
انواع داده ای(Data Type) بیشتری وجود دارد که در بخش های آینده به توضیح هریک می پردازیم. فقط این را بدانید که Integer یک نوع داده ی است که عدد صحیح در خودش نگه داری می کند.

مثال 1 : کار با متغییرها
1- پروژه ی جدیدی ایجاد کنید.
2- پنجره فرم را کوچکتر کنید، و یک دکمه روی آن قرار دهید. نام دکمه را btnAdd و Text آن را Add To intNumber


http://pnu-club.com/imported/mising.jpg
شکل 1-4


3- روی دکمه btnAdd دابل کلیک کنید تا پنجره کد آن ظاهر شود. سپس در رویداد Click آن(که البته پیشفرض است)، خطوط زیر را بنویسید.



http://pnu-club.com/imported/mising.jpg
شکل 2-4


4- برنامه را اجرا کنید. کادر پیغام عدد 30 را نمایش می دهد.

http://pnu-club.com/imported/mising.jpg
شکل 3-4

Borna66
04-27-2011, 07:06 PM
برنامه چگونه کار می کند؟
در خط اول برنامه متغییری با نام intNumber و نوع عدد صحیح(Integer) تعریف کردیم.
در خط دوم به متغییر تعریف شده مقدار 21 دادیم، همانطور که دیدید ابتدا متغییر را تعریف، سپس از آن استفاده کردیم.
در خط سوم مقداری که در متغییر است با 9 جمع می شود. و حاصل آن در intNumber قرار می گیرد. طبق گفته های بالا در حال حاضر مقدار جمع این دو عدد یعنی 30 در intNumber ذخیره شد و مقدار قبلی یعنی 21 پاک شد.
در خط آخر نیز تابع MessageBox ابتدا عبارت "Value of intNumber + 9" و سپس نام متغیر که مقدار را در خود نگهداری می کند را نشان می دهد.
نحوه جمع متغیر با عدد 9 می توانست به صورت زیر باشد:




http://pnu-club.com/imported/mising.jpg
شکل 4-4


که در این دستورات در خط سوم مقدار قبلی متغیر intNumber با 9 جمع شد و حاصل آن دوباره در intNumber قرار گرفت.

توضیح مختصر پنجره پیغام
- طبق تمرینات انجام شده در پنجره MessageBox چند آرگومان وجود دارد:

http://pnu-club.com/imported/mising.jpg
شکل 5-4

- هر مقداری که می خواهید مستقیماً در پنجره پیغام نمایش داده شود باید داخل دابل کوتیشن(" ") نوشته شود.
- برای اینکه یک متن را با یک متغییر کنار هم قرار گیرد از & استفاده می شود.
- آرگومان ها(قسمت های جدای پیغام)، با کاما(,) از هم جدا می شوند.
- آرگومان دوم(قسمت انتخاب شده-های لایت) یعنی"Add Number" عنوان پنجره پیغام را نشان می دهد. که آن هم باید داخل دابل کوتیشن قرار گیرد.
پس، اگر می خواستیم جمع دو مقدار را در نوار عنوان آن نشان می داد باید می نوشتیم:

http://pnu-club.com/imported/mising.jpg
شکل 6-4


که در این صورت شکل زیر به نمایش در می آمد:

http://pnu-club.com/imported/mising.jpg
شکل 7-4

و چون تعیین کردیم نتیجه در نوار عنوان نشان داده شود، جلوی عبارت "intNumber + 9 = " خالی است.

Borna66
04-27-2011, 07:07 PM
مثال 2: کار با متغیرها
می خواهیم برنامه ای بنویسیم که دو عدد را از کاربر بگیرد و با کلیک روی دکمه Sum جمع آن را محاسبه کرده و در Label نشان دهد.
1- برای این کار نیاز به دو TextBox داریم که دو عدد را از کاربر دریافت کند. نیاز به دو دکمه، یکی برای جمع دو عدد و دیگری برای خارج شدن از برنامه، و همچنین به چند Label.
آن ها را روی فرم بچینید:

http://pnu-club.com/imported/mising.jpg
شکل 8-4


2- سپس کد زیر را وارد کنید:



http://pnu-club.com/imported/mising.jpg
شکل 9-4


3- برنامه را اجرا کنید، داخل TextBox ها یک عدد وارد کنید، سپس روی دکمه Sum کلیک کنید، همانطور که مشاهده می کنید نتیجه جمع در Label نشان داده می شود.

http://pnu-club.com/imported/mising.jpg
شکل 10-4


البته در اینجا برای آشنایی شما با متغیرها، کد را اینگونه نوشته ایم. راه های دیگری نیز برای جمع دو عدد وجود دارد، از جمله:



http://pnu-club.com/imported/mising.jpg
شکل 11-4


همانطور که می بینید دستورات قبل را فقط در یک خط جمع کردیم.
که در آن txtOne با txtTow جمع می شوند و در lblSum ریخته می شوند. نکته قابل تأمل در کلمه ی val است که قبل از txtOne و txtTow آمده است.
این یکی از توابع ویژوال بیسیک است که مقدار داخل Text را به عدد تبدیل می کند. اگر این تابع را ننویسیم، برنامه عبارت داخل Text را رشته فرض می کند و آن دو عدد را مانند شکل زیر کنار هم قرار می دهد. به این صورت کنار هم قرار می دهد: 14 + 20 = (14&20) = 1420

http://pnu-club.com/imported/mising.jpg
شکل 12-4


راجع به مقدار رشته ای در بخش های بعد مفصل صحبت خواهیم کرد.

Borna66
04-27-2011, 07:08 PM
حاشیه
- برای دسترسی راحت به نوار ابزار بهتر است علامت Auto Hide بالا سمت راست نوار ابزار را بزنید تا پنجره ثابت بماند.

http://pnu-club.com/imported/mising.jpg
شکل 13-4


- بهتر است در سمت راست برنامه، پنجره Solution Explorer را کوچکتر و پنجره Properties را بزرگتر کنید تا به سرعت برنامه نویسی شما اضافه شود. برای اینکار اشاره گر ماوس خود را بین این دو پنجره ببرید تا همانند شکل زیر فلش دوسر ظاهر شود، سپس اندازه آن را کوچک یا بزرگ کنید.

http://pnu-club.com/imported/mising.jpg
شکل 14-4


- مشخصه پیشفرض کنترل ها و فرم هنگام ایجاد، مشخصه Text است. یعنی وقتی یک شیی را روی فرم قرار می دهید، قبل از آنکه روی شی یا فرم دیگری کلیک کنید، کلمه ای بنویسید و Enter را بزنید، همانطور که خواهید دید نوشته روی شی تان به کلمه ای که تایپ کردید تبدیل می شود.
- هنگامی که برنامه ای می نویسید، هنگام اجرا ممکن است به Error هایی برخورد کنید، در پنجره ای که Errorها را نشان می دهد، خطی که Error در آن جا اتفاق افتاده است را نشان می دهد، شما برای اینکه خط مورد نظر را پیدا کنید شروع به شمردن خطوط میکنید تا به خط موردنظر برسید، زمانی که برنامه شما کوچک باشد، این شمارش ها زیاد وقتتان رانمی گیرد، اما هنگامی که کدهای برنامه تان مثلا 100 خط یا بیشتر باشد، شمردن خطوط برای شما گران تمام می شود.
مثلا در زیر نشان می دهد در خط شماره 5 خطا رخ داده است:



http://pnu-club.com/imported/mising.jpg
شکل 15-4


اگر چندپروژه و چندین فرم داشته باشید، این پنجره به شما می گوید که خطا در کدام پروژه، در کدام فرم و در کدام خط آن اتفاق افتاده است.
ویژوال بیسیک دارای گزینه ای است که با فعال کردن آن شماره خطوط را نشان می دهد. برای اینکار از منوی ToolS گزینه Options را انتخاب کنید.پنجره ای نمایان می شود. طبق کادر زیر به صفحه مورد نظر بروید و علامت گزینه Line Numbers را بزنید.



http://pnu-club.com/imported/mising.jpg
شکل 16-4


همانطور که می بینید، خطوط شماره بندی شده اند.



http://pnu-club.com/imported/mising.jpg
شکل 17-4


تمرین بخش 4:
1- یک ماشین حساب ساده طراحی کنید که شامل جمع و تفریق باشید.(با استفاده از متغیرها)
2- برنامه ای بنویسید که نام، نام خانوادگی، سن و تحصیلات فرد را جداگانه دریافت کند و به صورت یکجا در کادر پیغام نشان دهد.(در این تمرین فقط دریافت سن با متغیر انجام شود، بقیه مشخصات طبق تمرین های قبل. به دلیل اینکه دریافت بقیه مشخصات ملزوم به دانستن انواع دیگر متغیرها می باشد که در بخش های بعدی گفته خواهد شد.)

Borna66
04-27-2011, 07:08 PM
بخش پنجم: عملگرها(2)
عملگرهاي رياضي
در بخش هاي قبل با عملگر مساوي آشنا شديد، در اين بخش به معرفي عملگرهاي +(جمع)، - (تفريق)، * (ضرب) و / (تقسيم) مي پردازيم.
عملگر / همان عملگر ÷ و عملگر * همان عملگر × است.
اين عملگرها همان وظايفي را انجام مي دهند كه در دنياي رياضيات انجام مي دادند. عملگر "+" براي جمع دو عدد، عملگر "-" براي تفريق دو عدد، عملگر "/" براي تقسيم دو عدد و عملگر "*" براي ضرب دو عدد انجام مي شوند.
نكته قابل تأمل در الويت هر كدام از اين عملگرها هنگام اجرا است، عبارت زير را در نظر بگيريد:


y = 4*5+2


در اين عبارت ويژوال چگونه بايد متوجه شود كه ابتدا بايد عدد 4 را در 5 ضرب كند و حاصل آن را با 2 جمع كند، كه نتيجه مي شود 22.
و يا اينكه ابتدا عدد 5 را با 2 جمع كند و حاصل آن را در 4 ضرب كند كه نتيجه مي شود 28 !
همانطور كه مي بينيد اگر الويت عملگرها را تغيير دهيم، نتيجه نيز طبق آن تغيير مي كند.
الويت در ويژوال بيسيك به صورت زير مي باشد:
1- * و /
2- + و -
اين الويت ها به معني است كه زماني كه در عبارت چندين عملگر داشتيم، ويژوال بيسيك ابتدا عمل ضرب و تقسيم را انجام مي دهد، سپس به سراغ عملگر جمع و تفريق مي رود.
اگر در عبارتي عملگر * و / كه هر دو داراي الويت بالايي دارند، بودند، برنامه ابتدا سمت چپ ترين عملگر را محاسبه مي كند.


مثال 1:


http://pnu-club.com/imported/mising.jpg


توضيح:
در اين عبارت دو عملگر داريم: عملگر + و عملگر * . طبق مطالب گفته شده، عملگر * الويت بيشتري دارد. پس ابتدا آن را محاسبه مي كند، كه حاصل 18 است. و بعد حاصل آن را با 2 جمع مي كند.

Borna66
04-27-2011, 07:08 PM
مثال 2:


http://pnu-club.com/imported/mising.jpg



توضيح:
1- بعد از بررسي عملگرها، يك عملگر / ، يك عملگر * و يك عملگر + مي يابد. به عملگر * و / كه الويت بيشتري دارند مراجعه مي كند. به دليل اينكه عملگر آن ها نسبت به يكديگر مساوي است، از سمت چپ ترين عملگر شروع مي كند كه در اينجا عملگر * است.
2- سپس عملگر بعدي كه الويت بيشتري دارد. يعني عملگر /
3- و در نهايت به محاسبه عملگر + مي پردازند. نتيجه 9 مي شود.

Borna66
04-27-2011, 07:08 PM
مثال 3‌:


http://pnu-club.com/imported/mising.jpg





نتيجه: 5


اگر بخواهيم خودمان الويت ها را تغيير دهيم، از پرانتز استفاده مي كنيم. در اين صورت ويژوال بيسيك از داخلي ترين پرانتز استفاده مي كند. و به سمت بيرون حركت مي كند.

Borna66
04-27-2011, 07:09 PM
مثال 4:


http://pnu-club.com/imported/mising.jpg





نكته: را در خاطر داشته باشيد كه معادل عبارت http://pnu-club.com/imported/mising.jpg عبارت (4+5) / 20 است.


مثال 5: برنامه اين بنويسيد كه عبارت http://pnu-club.com/imported/mising.jpg را محاسبه كند.
1- ابتدا عبارت را به صورتي تبديل مي كنيم كه براي ويژوال بيسيك قابل فهم باشد. يعني:


http://pnu-club.com/imported/mising.jpg


2- فرم را طراحي مي كنيم و كد زير را در رويداد كليك دكمه اي مي نويسيم.



http://pnu-club.com/imported/mising.jpg



شكل 1-5





http://pnu-club.com/imported/2011/04/105.gifThis image has been resized. Click this bar to view the full image. The original image is sized 935x209.http://pnu-club.com/imported/mising.jpg



شكل 2-5



3- برنامه را اجرا كنيد و نتيجه را ببينيد.



http://pnu-club.com/imported/mising.jpg



شكل 3-5

Borna66
04-27-2011, 07:09 PM
تمرين بخش 5
1- عبارت هاي زير را محاسبه كنيد.


http://pnu-club.com/imported/mising.jpg




http://pnu-club.com/imported/mising.jpg


(ارسال حاصل عبارت a و b كافي است. ولي براي عبارت c تبديل آن به صورت قابل فهم براي برنامه را نيز ارسال كنيد.)
2- ماشين حسابي طراحي كنيد كه شامل دكمه هايي براي محاسبه +، - ، / و * باشد.
(براي عمليات تقسيم، هنگام اجرا براي تست، عددها را بخش پذير انتخاب كنيد. در صورتي كه بخش پذير نباشد حاصل به صورت عدد اعشار مي باشد كه نوع داده اي آن فرق مي كند، توضيحات كامل در بخش بعدي گفته خواهد شد. )

Borna66
04-27-2011, 07:09 PM
بخش 6 انواع داده ای
هنگامی که می خواهید یک متغیر را تعریف کنید بهتر است بدانید که تقریباً چه نوع اطلاعاتی را می خواهید در آن ذخیره کنید. تا اینجا در مثال های قبل، با نوع داده ای Integer آشنایی پیدا کردید، و متوجه شدید که مقادیر صحیح را در خود نگه داری می کند.
تمام زبان های مهم، تعداد زیادی نوع داده ای دارند که شما می توانید نوع اطلاعات متغیر خود را از بین آن ها انتخاب کنید. نوع داده ای یک متغیر تأثیر زیادی بر اینکه چگونه کامپیوتر برنامه شما را اجرا کند، دارد. در این بخش نگاه دقیق تری بر چگونگی کار متغیرها خواهیم داشت. همچنین چگونگی تأثیر نوع یک تغيیر را در کارایی برنامه بررسی خواهیم کرد.


کار کردن با اعداد:
زمانی که شما در ویژوال بیسیک 2010 کار می کنید، می توانید دو نوع عدد داشته باشید: اعداد صحیح و اعداد اعشاری.
هر کدام از این اعداد کاربرد خاص خودشان را دارند. مثلاً اعداد صحیح توانایی نگهداری بخش اعشاری را ندارند. بنابراین برای محاسباتی که ممکن است نتیجه شامل اعشار هم باشد نباید از متغیرهای صحیح استفاده کنید. مثلا در محاسبه تقسیم دو عدد.
در نوشتن نرم افزارها، بیشتر از اعداد صحیح برای شمردن مراتبی که یک اتفاق رخ می دهد استفاده می شود تا برای انجام محاسبات. برای محاسبات بیشتر از اعداد اعشاری استفاده می کنیم.
مثلا فرض کنید در حال نوشتن برنامه ای هستید که اطلاعات مشترکین را در صفحه نمایش می دهد. همچنین فرض می کنیم که شما اطلاعات 100 مشترک را در بانک اطلاعاتی خود دارید. زمانی که برنامه شروع به کار کرد، اطلاعات مشترک اول را در صفحه نمایش می دهید. در اینجا شما باید بدانید که اطلاعات کدام مشترک در صفحه چاپ شده تا زمانی که کاربر درخواست کرد اطلاعات مشترک بعدی را مشاهده کند، بدانید کدام اطلاعات را باید نمایش دهد.
معمولا اگر بانک اطلاعاتی را که حاوی اطلاعات مشترکین باشند مشاهده کنید، خواهید دید که در آن هر مشترک دارای یک شماره مخصوص به خود است. این به این خاطر است که کامپیوترها راحت تر بتوانند با اعداد کار کنند تا با اسامی.
معمولا این شماره های مخصوص که به مشترکین داده می شود، یک عدد صحیح است که به آن شناسه(Identifier) یا ID گفته می شود. بنابراین اگر ما لیستی از 100 مشترک را در بانک اطلاعاتی خود داشته باشیم، هر مشترک دارای یک عدد صحیح مخصوص به خود از 1 تا 100 است. برنامه شما برای چاپ اطلاعات مشترکین، می تواند شماره آخرین مشترکی که اطلاعات او چاپ شده است را در یک متغیر نگه دارد. زمانی که کاربر درخواست کرد تا اطلاعات مشترک بعدی را ببیند، کافی است که شما یک واحد به شناسه آخرین کاربری که اطلاعات او چاپ شد اضافه کنید و اطلاعات مشترک جدید را چاپ کنید.

Borna66
04-27-2011, 07:10 PM
مثال 1 کار با اعداد صحيح:
1- پروژه ی جدیدی ایجاد کنید.
2- یک کنترل Button به فرم خود اضافه کنید. خاصیت Name آن را به btnIntMath و خاصیت Text آن را به Math Test تغییر دهید. روی کنترل دابل کلیک کنید و در متد ایجاد شده برای رویداد Click کد مشخص شده زیر را تایپ کنید:



http://pnu-club.com/imported/mising.jpg



3- پروژه را اجرا کنید. و روی دکمه Math Test کلیک کنید. چهار کادر پیغام متوالی همانند شکل نمایش داده می شوند و شما باید روی OK در هر کدام کلیک کنید.


http://pnu-club.com/imported/mising.jpg



شكل 1-6

Borna66
04-27-2011, 07:10 PM
برنامه چگونه کار می کند؟
خوشبختانه، هیچ کدام از کدهایی که در برنامه بالا نوشتید، خیلی گیج کننده نیستند. شما قبلاً کاربرد عملگر جمع را دیده اید، در اینجا هم از آن دوباره استفاده کرده ایم.


http://pnu-club.com/imported/mising.jpg



چیزی که در این کد شما به کامپایلر می گویید این است که:
1- مقدار متغیر intNumber را برابر 16 قرار بده.
2- سپس مقدار متغیر intNumber را برابر مقدار کنونی این متغیر(عدد 16) به اضافه 8 قرار بده.
همانطور که در کادر پیغام می بینید مقدار 24 به عنوان نتیجه نمایش داده خواهد شد که درست است.


در کد زیر:


http://pnu-club.com/imported/mising.jpg



دوباره همانند قسمت جمع به کامپایلر می گوید که:
1- مقدار متغیر intNumber را برابر 24 قرار بده.
2- مقدار متغیر intNumber را برابر مقدار کنونی این متغیر(24) منهای 2 قرار بده.
این کد:


http://pnu-club.com/imported/mising.jpg



1- مقدار intNumber را برابر 6 قرار بده.
2- مقدار intNumber را برابر مقدار کنونی این متغیر(6) ضرب در 10 قرار بده.


و کد زیر:


http://pnu-club.com/imported/mising.jpg



1- مقدار intNumber را برابر 12 قرار بده.
2- مقدار intNumber را برابر مقدار کنونی این متغیر(یعنی 12) نقسیم بر 6 قرار بده.

Borna66
04-27-2011, 07:10 PM
نوع دیگر نمایش عمليات روي متغيرها:
در ویژوال بیسیک علامت های جمع، تفریق، ضرب و تقسیم، همچنین چند عملگر دیگر حالت خاصی برای نمایش دارد:


http://pnu-club.com/imported/mising.jpg


شك

Borna66
04-27-2011, 07:11 PM
محدودیت کار با اعدا صحیح:
محدودیت اصلی که در کار با اعداد صحیح وجود دارد این است که شما نمی توانید عددی داشته باشید که دارای قسمت اعشاری باشد. برای مثال نمی توانید در برنامه خود دستوری مشابه زیر داشته باشید:


http://pnu-club.com/imported/mising.jpg



البته می توانید دستور بالا را در برنامه نوشته و آن را اجرا کنید، اما نتیجه مورد نظر خود را مشاهده نخواهید کرد. زیرا متغیر intNumber از نوع عدد صحیح است و شما نمی توانید آن را در حالت عادی در یک عدد اعشار ضرب کنید. در چنین حالتی نتیجه به نزدیک ترین عدد صحیح گرد خواهد شد. برای مثال اگر نتیجه برابر با 61.34 باشد، عدد 61 و اگر برابر با 61.78 باشد باز هم عدد 61 نمایش داده می شود.
در تقسیم دو عدد هم اگر بخواهید یک عدد صحیح را بر یک عدد اعشاری تقسیم کنید، با چنین مشکلی، مشابه حالت ضرب روبرو می شوید. اما کد زیر را در نظر بگیرید:


http://pnu-club.com/imported/mising.jpg


در این کد مقدار متغیر intNmber را از 12 که یک عدد صحیح است بر 7 که آن نیز یک عدد صحیح است تقسیم کرده ایم و جواب برابر 1.71 است. در این مواقع نیز کامپایلر خطایی تولید نمی کند، اما مقداری که در متغیر intNumber ذخیره می شود با جوابی که شما انتظار دارید تفاوت دارد. به عبارت دیگر، بعد از اجرای کد بالا، جواب 1.71 در intNumber نخواهد بود، بلکه عدد به نزدیک ترین عدد صحیح گرد شده و عدد 2 در متغیر قرار می گیرد. همانطور که ممکن است تصور کنید، اگر برنامه ای بنویسید که بخواهد با انواع مختلف داده ها کار کند و از اعداد صحیح استفاده کنید با مشکل مواجه خواهید شد.
در قسمت بعدی خواهید دید که چگونه می توانید با استفاده از اعدا اعشاری، از بروز مشکلاتی مانند قبل جلوگیری کنید.

Borna66
04-27-2011, 07:11 PM
اعداد اعشاری:
در قسمت قبل متوجه شدید که اعداد صحیح برای انجام محاسبات ریاضی مناسب نیستند. زیرا نتیجه بیشتر این محاسبات دارای قسمت اعشاری است و اعدا صحیح هم نمی توانند قسمت اعشاری را در خود نگهداری کنند. در این بخش چگونگی انجام محاسبات ریاضی با اعداد اعشاری را در برنامه های مختلف مانند محاسبه مساحت و محیط دایره تمرین خواهیم کرد، اما فعلا در مثلا زیر فقط مفاهیم کلی را معرفی می کنیم.
مثال 2 كار با اعداد اعشاري:
1- پروژه جدید ایجاد کنید، یک کنترل Button روی فرم قرار دهید و خاصیت Name آن را برابر btnFloatMath و خاصیت Text آن را برابر Double Test قرار دهید.
2- روی دکمه دابل کلیک کنید و در متد مربوط به رویداد کلیک آن کدی را که در زیر مشخص شده است را وارد کنید:
http://pnu-club.com/imported/mising.jpg


http://pnu-club.com/imported/mising.jpg



3- برنامه را اجرا کنید، و روی کلید Duble Test کلیک کنید. نتیجه مشابه ای شکل مشاهده خواهید کرد.


http://pnu-club.com/imported/mising.jpg



شكل 3-6

Borna66
04-27-2011, 07:11 PM
برنامه چگونه کار می کند؟
همانطور که متوجه شدید مهمترین تغییر در برنامه بالا، تغییر نوع تعریف متغیر است:


http://pnu-club.com/imported/mising.jpg



به جای اینکه برای تعریف از کلمه کلیدی Integer استفاده کنیم، از کلمه Double استفاده کرده ایم. این کلمه به ویژوال بیسیک می گوید که شما می خواهید در این متغیر به جای اعداد صحیح، اعداد با قسمت اعشار قرار دهید. در نتیجه، هر عملیاتی که بر روی متغیر dblNumber انجام دهید از نوع اعشاری خواهد بود و می تواند قسمت اعشاری را نیز نگهداری کند. نکته مهم دیگر در کد بالا این است که به جای استفاده از پیشوند int از پیشوند dbl استفاده کرده ایم تا مشخص باشد که متغیر بالا اعداد اعشاری از نوع Double را در خود نگهداری می کند.
البته با این که عملیات روی متغیر dblDouble قسمت اعشاری را نیز نگهداری می کند اما روش انجام عملیات، همانطور که در کد زیر مشاهده می کنید، با عملیات روی اعداد صحیح تفاوتی ندارد.


http://pnu-club.com/imported/mising.jpg



اگر کد بالا را اجرا کنید نتیجه 196.45822 را مشاهده می کنید که همانند دوعددی که در هم ضرب شدند. دارای قسمت اعشاری نیز هست. البته اعدادی که در این محاسبات به کار می روند حتما نباید دارای بخش صحیح باشند، بلکه مانند قسمت تقسیم برنامه قبل می توانند از دو عدد صحیح تشکیل شده باشند که در صورت نیاز حاصل عبارت با قسمت اعشاری داده خواهد شد. برای مثال به کد زیر توجه کنید:


http://pnu-club.com/imported/mising.jpg



نتیجه این تقسیم دارای قسمت اعشاری نیز خواهد بود زیرا متغیر dblNumber به گونه ای تعریف شده است که در صورت نیاز بتواند قسمت اعشاری اعداد را نیز نگهداری کند. بنابراین اگر برنامه بالا را اجرا کنید، عدد 1.71428571428571 را به عنوان نتیجه مشاهده خواهید کرد.

Borna66
04-27-2011, 07:11 PM
اعداد اعشاری با دقت معمولی:
در قسمت قبلی از اعداد اعشاری با دقت مضاعف استفاده کردیم، اما در ویژوال شما براي نگهداری اعداد اعشاری خود می توانید از دو نوع عدد اعشاری استفاده کنید. در بعضی از مواقع، بخش اعشاری یک عدد ممکن است تا بی نهایت ادامه پیدا کند(مانند عدد پی)، اما کامپیوتر بی نهایت فضا برای نگهداری این اعداد ندارد، بنابراین همیشه برای نگهداری تعداد ارقام اعشاری یک عدد محدودیت هایی وجود دارد. این محدودیت به اندازه یا فضایی بستگی دارد که متغیر برای نگهداری عدد از آن استفاده می کند.
نکته: به جز در مواردی که به دقت بسیار بالایی نیاز داری، از اعداد با دقت مضاعف استفاده نکنید و به جای آن اعداد با دقت معمولی را به کار ببرید. استفاده از اعداد با دقت مضاعف به جای اعداد با دقت معمولی، مخصوصا در برنامه های بزرگ می تواند در سرعت برنامه شما به شدت تأثیرگذار باشد.
برای انتخاب اینکه از چه نوع عددی استفاده کنید، باید به محاسباتی که می خواهید انجام دهید توجه کنید. برای تعریف متغیرهای عددی بادقت مضاعف از کلمه کلیدی As Double و برای تعریف متغیرهای عددی با دقت معمولی از کلمه کلیدی As Single استفاده کنید.

Borna66
04-27-2011, 07:12 PM
کار با رشته ها:
رشته مجموعه از کاراکتر است که ابتدا و انتهای آن به وسیله علامت نقل قول(") مشخص می شود. روش استفاده از رشته ها را در برنامه های قبلی برای نمایش نتیجه برنامه در صفحه نمایش دیده اید. رشته ها عموماً برای این منظور استفاده می شوند که به کاربر اطلاع داده شود در برنامه چه اتفاقی افتاده است و چه اتفاقی می خواهد رخ دهد. یک استفاده دیگر از رشته ها، ذخیره قسمتی از متن برای استفاده از آن در یک الگوریتم است.در طول این آموزش با رشته های زیادی مواجه می شوید، همانطور که تاکنون از رشته زیر استفاده کرده اید:


http://pnu-club.com/imported/mising.jpg



"Multiplication test…" و "Floating Points" نمونه هایی از رشته هستند، زیرا دارای علامت (") در ابتدا و انتهای خود هستند. اما عبارت dblNumber چی؟ در عبارت بالا، مقدار متغیر dblNumber به رشته تبدیل شده و پس از ترکیب با دو رشته دیگر در صفحه نمایش داده خواهد شد(چگونگی تبدیل این متغیر عددی به رشته، بحثی است که راجع به آن صحبت خواهیم کرد. اما فعلا این را بدانید که در اینجا تبدیل صورت گرفته است.). برای مثال اگر مقدار متغیر dblNumber برابر 27 باشد، این مقدار به یک عبارت رشته ای که دو کاراکتر طول دارد تبدیل می شود و سپس روی صفحه نمایش داده می شود.


مثال 3 کار با رشته ها:
1- پروژه جدید ایجاد کنید، یک کنترل Button روی فرم قرار دهید. خاصیت Name این دکمه را برابر btnStrings و خاصیت Text آن را Using Strings قرار دهید.
2- روی آن دابل کلیک کنید و کد زیر را وارد کنید:


http://pnu-club.com/imported/mising.jpg



3- برنامه را اجرا کنید و روی دکمه کلیک کنید. کادر پیغام شکل زیر نمایش داده خواهد شد.


http://pnu-club.com/imported/mising.jpg



شكل 4-6

Borna66
04-27-2011, 07:12 PM
برنامه چگونه کار می کند؟
برای تعریف متغیری که بتواند رشته ها را در خود نگهداری کند، می توانید مشابه تعریف متغیرهای عددی عمل کنید. اما این مرتبه از کلمه کلیدی As String استفاده کنید.


http://pnu-club.com/imported/mising.jpg


همانند قبل يك مقدار به متغير اختصاص مي دهيد:


http://pnu-club.com/imported/mising.jpg



برای مشخص کردن این که رشته شما از کجا شروع شده و تا کجا ادامه پیدا می کند باید از علامت نقل قول(") استفاده کنید. این مورد اهمیت زیادی دارد، زیرا این علامت به ویژوال بیسیک می گوید که کدام عبارت را باید به عنوان رشته در نظر بگیرد و آن ها را کامپایل نکند. اگر از علامت نقل قول استفاده نکنید، ویژوال بیسیک با این متن ها به عنوان کد رفتار کرده، سعی می کند آن ها را کامپایل کند و نمی تواند بنابراین کامپایل برنامه با مشکل خطا روبرو خواهد شد.
وقتی مقدار "Hello, World!" را در متغیر strData ذخیره کردید می توانید آن را به عنوان یک پارامتر به تابع MessageBox.Show بفرستید تا روی صفحه نمایش چاپ کند.
همانطور که دیدید نحوه تعریف و استفاده از رشته ها نیز مشابه اعداد است. در قسمت بعدی در مورد چگونگی انجام عملیات مختلف روی رشته ها صحبت خواهیم کرد.


تمرين بخش 6
1- برنامه اي کدی بنویسید که زمان را برحسب ساعت دریافت کرده و به دقیقه و ثانیه تبدیل کند.
2- برنامه اي بنويسيد که دو نام را به صورت رشته اي را از ورودي خوانده، سپس محتويات اين دو متغير را با يکديگر تعويض کرده و در خروجي چاپ کند.
3- برنامه اي بنويسيد که سه ضلع يک مثلث را خوانده ، تعيين کند آيا مثلث قائم الزاويه است يا خير؟
4- برنامه اي بنويسيد كه عددي را از كاربر گرفته و تعيين كند زوج است يا فرد؟

Borna66
04-27-2011, 07:14 PM
بخش 7 عملگرهای شرطی یکی از مهمترین دستورات زبان برنامه نویسی ویژوال بیسیک دستور If است
در زندگی روزمره ما از این دستور بسیار استفاده می کنیم


یادداشت : http://pnu-club.com/imported/mising.jpgاگر زود سر کارم بروم پس کارم زودتر تمام می شود
If ( زود سرکارم بروم ) then ( کارم زودتر تمام می شود )


شکل کلی دستور این چنین است


یادداشت : http://pnu-club.com/imported/mising.jpg


If Conditional Then
دستورات ویژوال بیسیک
End If

که در اینجا Conditional یک عبارت یا متغیر شرطی است که جواب آن True و یا False است

مثال :

یادداشت : http://pnu-club.com/imported/mising.jpg

If ( txtPool.txt < 2000 Then )
Lb1Pool = "شما پول کم دارید"
End If


دستورات If زمانی کامل می شود که حالت نادرست هم پردازش شود

شکل کلی دستور این چنین است


یادداشت : http://pnu-club.com/imported/mising.jpg
If Conditional Then
دستورات ویژوال بیسیک
Else
دستورات ویژوال بیسیک
End If
مثال:

یادداشت : http://pnu-club.com/imported/mising.jpg

If ( txtPool.txt < 2000 Then )
lb1Pool = "شما پول کم دارید"
Else
lblPool = "از دستور خارج شو"
End If



خروج زودرس
گاهی اوقات لازم است که بخواهیم یک رویداد را زودتر از موعد مقرر خاتمه دهیم برای اینکار از فرمان Exit sub استفاده میکنیم و اگر تابع باشد ( در مورد تابع بعدا" می خوانیم ) از Exit Function استفاده می کنیم



یادداشت : http://pnu-club.com/imported/mising.jpg
if ( txtSales.text < 500 ) then
Exit sub
End If


دستور ElseIf
اگر بخواهیم یک دستور If … Else را در دستور دیگر If … Else قرار دهیم از ElseIf استفاده میکنیم

یادداشت : http://pnu-club.com/imported/mising.jpg

If ( intHours <= 40 ) then
curOvertime = 0
ElseIf ( intHours <= 50 ) then
curOvertime = 10
Else
Exit sub
End If






تمرینات این بخش

1-برنامه ای بنویسید که رمز عبور را برسی کند در صورت اشتباه بودن پیام بهد رمز اشتباه می باشد و در صورت درست بودن پیام دهد رمز درست می باشد

2- برنامه ای بنویسید که دو عدد از ورودی دریافت کند و بزرگترین آنها را نمایش دهد

3-برنامه ای بنویسید که نمرات دانش اموزان را بگیرد و رتبته بندی کند

Borna66
04-27-2011, 07:20 PM
تکرار با استفاده از حلقه(1) در ویژوال بیسیک با دستوراتی که به دستورات حلقه معروفند میتوان تعدادی دستور را به دفعات دلخواه تکرار کرد.
برای این بتوان بدون استفاده از جعبه متن با کاربر ارتباط برقرار کرد و اطلاعاتی را از وی گرفت می بایست از حلقه استفاده کرد

حلقه Do

شکل کلی آن :




Do While condition

یکی از دستورات ویژوال بیسیک

Loop While condition



Do Until condition
یکی از دستورات ویژوال بیسیک

Loop Until condition

شرط condition در حلقه Do میتواند هر عبارت یا متغیر منطقی باشد که True یا False بر میگرداند

- محل تست شرط حلقه : اگر شرط حلقه در ابتدای آن تست شود ممکن است این حلقه هرگز اجرا نشود اما اگر تست حلقه در انتهای آن صورت بگیرد حلقه حداقل یکبار اجرا میشود چون ویژوال بیسیک فقط بعد از اجرای حلقه است که شرط را تست خواهد کرد
- خصلت تست حلقه : حلقه هایی که While دارند مادامی که تست درست است اجرا میشوند ولی در حلقه های Until اگر شرط درست شود اجرای حلقه پایان خواهد یافت



یادداشت :
http://pnu-club.com/imported/mising.jpg

Do While intCtr <= 10
lblOut.Caption = intCtr
intCtr = intCtr + 1
Loop

یکی از مهمترین نکات در حلقه ها این است که شرط حلقه باید در بدنه حلقه تغییر کند چون اگر چنین نشود حلقه تا ابد ادامه خواهد یافت به همین خاطر در مثال بالا توسط عملگر انتساب مقدار intCtr یکی اضافه میشود

مثال :


یادداشت :
http://pnu-club.com/imported/mising.jpg
Private Sub cmdPrint_Click()
Dim Counter As Integer
Counter = txtInput.Text
lblDisplay.Caption = ""
If txtInput.Text = Null Then Exit Sub End If
Do While Counter > 0
lblDisplay.Caption = lblDisplay.Caption & "#"
Counter = Counter - 1
Loop
End Sub




در این مثال می بایست برای txtInput.Text فقط از عدد استفاده کنید چون در غیر اینصورت دچار Error می شوید

__________________

تمرین :

1-نمودار گردش کار هر دو حلقه را رسم کنید
2-برنامه ای بنویسید که اعداد فرد 1 تا 20 را برای ما نمایش بدهد
3-برنامه ای بنویسید که مجموع اعداد 1 تا 500 را برای ما نمایش دهد(1+2+3+4...)