# Native Code > برنامه نویسی در 6 VB > مقالات مرتبط با برنامه نویسی VB >  آموزش گام به گام ویژوال بیسیک به زبانی ساده !!!

## raika17metal

با عرض سلام خدمت تمامی عزیزان و علاقمندان به زبان برنامه نویسی ویژوال بیسیک و عرض پوزش از اساتید محترم و گرانقدر در این عرصه قصد دارم آموزش ویژوال بیسیک رو از ابتدا و بصورت مستمر در این تاپیک قرار بدم. امیدوارم که برای عزیزان مفید باشه. لطفا برای یه دست بودن مقاله، مقالات کمکی خودتون رو از طریق ایمیل یا پیام خصوصی ارسال کنید تا از کمک شما عزیزان نیز در بهبود کیفیت آموزشی بهره مند بشیم.  :لبخند گشاده!:

----------


## raika17metal

درس اول :
 *مقدمه*زبان برنامه نویسی مجموعه از نشانه ها و ترکیب نحوی آنها می باشد که برنامه نویس می تواند برای حل مساله از آنها کمک بگیرد. 
زبان های برنامه نویسی را از چهار دیدگاه می توان بررسی نمود. که به شکل زیر می باشند : 

الف) روش های برنامه نویسی 
1. زیر روالی 
2. ساخت یافته 
3. مدولا (ماجولار) 
4. شئ گرا 

ب) نزدیکی به ماشین 
1. سطح پایین 
2. سطح میانی 
3. سطح بالا 

ج) نوع ترجمه 
1. مفسّری 
2. کامپایلری 

د) رابط برنامه نویسی 
1. مبتنی بر متن 
2. مبتنی بر گرافیک (ویژوال) 

روش های برنامه نویسی 
در ابتدا برنامه نویسی به صورت نامشخص انجام می شد و موضوع مهم بود در این روش که فاقد قواعد بود برنامه نویسی بسیار دشوار و رفع عیب برنامه دشوار تر بود و از طرفی برنامه ها قابلیت توسعه نداشتند و اغلب برای حل مسائل ساده به کار می رفت. در روش نامشخص خطوط برنامه بیشتر از چند صد خط نمی شد. 
برنامه نویسی زیرروالی اولین قدم در پیشرفت برنامه نویسی بود. برنامه نویسی زیرروالی زبانهای فرترن و کوبول را عرضه کردند. در این روش برنامه نویس مسائل را به چندین عملکرد تقسیم می کند و با هر عملکرد یا تابع به صورت جداگانه رفتار می کند اما پیچیدگی تابع هنوز پابرجاست. 
حتما این ضرب المثل را شنیده اید که حل مشکل بهتر از حل بحران است. درروش ساخت یافته ما با معنی همین ضرب المثل روبه رو می شویم. به عبارت دیگر در این روش برنامه را به قطعات کوچتری از تابع می توان تجزیه کرد و شکل برنامه مرتب تر می شود. 
در این روش قوانینی ارایه شده که براساس هر تابع ا به چند تابع فرعی تقسیم می شود و توابع فرعی قطع بلوک هایی هستند که عمل مشخصی را انجام می دهند حلقه های For، While و ... از این نوع هستند. 
زبان های برنامه نویسی پاسکال و C از این نوع می باشند. روش برنامه نویسی امروزی چیزی بین برنامه نویسی زیرروالی و ساخت یافته می باشد. 
برنامه نویسی مدولار که به قطعه قطعه نیز معروف است نوع توسعه یافته برنامه ساختار می باشد که در آن قطعات کد به قسمتهای کوچتری به نام مدول (ماژول) تقسیم می شوند. از دیگر ویژگی های برنامه نویسی مدولار کپسوله سازی اطلاعات می باشد. یعنی هر یک از متغیرها و قطعه کدها در محدوده کاری خود فعال هستند و این فعالیت از دید سایر قسمت های برنامه پنهان می باشد. 
برنامه نویسی شئ گرا نوع جدید برنامه نویسی است که واحد اصلی برنامه، شئ می باشد. برنامه نویسی شئ گرا دارای قدرت و سازماندهی خیره کننده ای می باشد. اشیاء در برنامه نویسی شئ گرا مساله را به بخش های تشکیل دهنده آن تجزیه می کنند و هر مولفه شامل دستورالعمل ها و دادهای مربوط به خود است در نتیجه پیچیدگی برنامه کاهش یافته و برنامه های بزرگ را راحت تر می توان مدیریت کرد. مهمترین ویژگی در برنامه نویسی شئ گرا، کپسوله سازی، چند ریختی و وراثت می باشد. 
برنامه یا پروژه های برنامه نویسی را مانند اتومبیلی تصور کنید. این اتومبیل دارای اجزای مختلفی مانند موتور، بدنه، فرمان و ... می باشد، اشیا نیز مانند قطعات اتومبیل هستند. 
فعالیت های قسمت موتور از دید راننده پنهان می باشد و برای راننده تنها حرکت اتومبیل مهم می باشد که این هم مفهوم کپسوله سازی است. 
چند ریختی به معنای انجام امور مختلف به وسیله یک شی است به عبارتی یک شئ به چند صورت پیاده سازی می شود برای مثال در اتومبیل موتور وظایف مختلفی را برعهده دارد و از طرفی با سایر اشیاء مثلا گاز، فرمان و ... در ارتباط می باشد. 
وراثت واژه ای غریبه نیست و همان معنای عامیانه را در برنامه نویسی دارد. یعنی یک شی در حین اینکه ویژگی های خود را دارا می باشد تعدادی دیگر از ویژگی های خود را از سایر اعضا به ارث می برد برای مثال زمانی که شما فرمان را حرکت می دهید چرخ ها نیز حرکت می کنند و این امر باعث تغییر مسیر اتومبیل می گردد در اینجا شئ چرخ وابسته به شئ فرمان می باشد.
--------------------
درس دوم :
* تاریخچه و ویژگی های ویژوال بیسیک*تاریخچه ویژوال بیسیک
عرضه نگارش های مختلف ویژوال بیسیک توسط مایکروسافت به شرح زیر می باشد : 
نگارش 1 سال 1991 
نگارش 2 سال 1992 
نگارش 3 سال 1993 
نگارش 4 سال 1995 
نگارش 5 سال 1997 
نگارش 6 سال 1998 

البته قبل از نگارش 3 ویژوال بیسیک با استقبال چندانی روبه رو نشده بود اما با عرضه نگارش 3 توسط مایکروسافت که کامپوننت های زیادی را در بر داشت سبب شد تا برنامه نویسان زیادی را به سوی جذب کند و به همین ترتیب نگارش های بعد در سال های بعد عرضه شد. 

برخی ویژگی های ویژوال بیسیک : 
ویژوال بیسیک مجموعه ای گسترده تر و فراتر از VBA (Visual Basic For Application) می باشد. مایکروسافت از VBA برای عرضه محصولات خود استفاده کرده است بنابراین برنامه نویسان ویژوال بیسیک به راحتی می توانند در سایر محصولات مایکروسافت برنامه نویسی کنند. 
محیط طراحی در ویژوال بیسیک GUI یا Graphic User Interface می باشد که طراحی برنامه های گرافیکی و تحت ویندوز در آن به راحتی امکان پذیر می باشد. 
شما در ویژوال بیسیک نیازی به کامپایل کردن برنامه ندارید و آزمایش برنامه های ویژوال بیسیک توسط یک Interpreter یا مفسر انجام می گیرد. 
از آنجایی که ویژوال بیسیک یک برنامه مبتنی بر شی (Object) می باشد و به برنامه نویس اجازه می دهد با استفاده از قطعات از پیش آماده شده توسط سایر شرکتها برنامه های خود را طراحی نماید. 
راهنمای جامعی (MSDN) که به همراه ویژوال بیسیک ارائه می شود برای برنامه نویسان بسیار سودمند می باشد. 
امکانات مناسب برای خطایابی یا Debugging برنامه ها. 
از دیگر ویژگی های ویژوال بیسیک گستردگی برنامه های آن می باشد. که مهمترین آنها عبارتند از : 
قابلیت فراخوانی و استفاده از Wondows API 
ادغام برنامه ها با سایر برنامه های Windows 
دسترسی به بانک های اطلاعاتی

* منبع : برنامه سازی 1 - مولفان : علیرضا جباریه - کامبیز جمعدار*

----------


## raika17metal

درس سوم :
*محیط ویژوال بیسیک*
محیط ویژوال بیسیک یکی از محیط های توسعه یافته IDE (Integrated Development Environment) می باشد که به برنامه نویسان ویژوال بیسیک امکان می دهد برنامه های تحت ویندوز خود را بدون نیاز به استفاده از برنامه های کاربردی دیگر ایجاد اجرا و خطایابی کنند.
با اجرای برنامه ویژوال بیسیک شکلی زیر نمایان می شود که به شما اجازه می دهد تا یکی از انواع برنامه هایی که توسط ویژوال بیسیک قابل طراحی هستند انتخاب کنید.

نوع Standard.Exe که به طور پیش فرض در کادر موجود در زبانه New انتخاب شده است به برنامه نویس امکان می دهد که برنامه ی اجرایی استاندارد را ایجاد کند.

علاوه بر زبانه New دو زبانه دیگر با نام های Existing و Recent وجود دارد. 

زبانه Existing برای بازکردن پروژه ای که از قبل وجود دارد استفاده می شود. همچنین به وسیله زبانه Recent می توان لیستی از آخرین پروژه های باز شده یا ایجاد شده را نشان را مشاهده نمود. 
آخرین مورد در این پنجره کادر محاوره ای در پایین صفحه می باشد که اگر آن را تیک دار کنیم دیگر نیازی نیست با هر بار اجرای برنامه Visual Basic این کادر را تایید کنیم.





با انتخاب گزینه های پیش فرض یعنی Standard.Exe و فشردن کلید Open وارد محیط طراحی Visual Basic  می شود که شکل آن بصورت زیر می باشد. 

VB نیز مانند سایر برنامه های Microsoft دارای اجزای مختلفی می باشد که به شرح هر یک از آنها پردازیم :

نوار آبی رنگ Title که حاوی نام پروژه به همراه توضیحات مختصر در سمت چپ و سه دکمه Min , Max و Close در سمت راست می باشد که یقینا شما مشابه آن را بارها دیده اید. 

1)	نوار منو که حاوی گزینه های مانند File (برای مدیرت فایل )، Edit ( انجام ویرایش ) View تنظیم موارد قابل مشاهده روی میز کار، Project ( مدیریت پروژه ها ) و ... می باشد که به زودی به شرح هر یک از آنها خواهیم پرداخت. 
2)	در زیر نوار منو نوار ابزار استاندارد قرار دارد که برای سهولت و سرعت در امر برنامه نویسی تعبیه شده است و حاوی گزینه های مانند Add Standard Exe Project برای اضافه کردن یک پروژه استاندارد، Add Form برای افزودن فرم، Menu Editor ایجاد و ویرایش منوها و ... می باشد.

3)	در سمت چپ پنجره ToolBox قرار دارد که به برنامه نویس امکان می دهد تا کنترل ها مورد نیاز را به برنامه اضافه نموده و از آنها استفاده کند. 

4)	شما در وسط صفحه پنجره را مشاهده می کنید که فرم نام دارد. که شامل یک صفحه مشبّک و با پس زمینه خاکستری رنگ می باشد. پنجره فرم در اصل میز کار شما می باشد که شما می توانید کنترلها را به آن اضافه نموده و در هنگام اجرا از آن استفاده نمائید. نا گفته نماند که پنچره فرم به تنهایی یک پروژه کامل می باشد به طوری که شما می توانید آن را اجراکنید. برای امتحان می توانید کلید F5 را فشار دهید. 

5)	در سمت راست قسمت بالا پنجره Project را مشاهده می کنید در آن می توان اجزای پروژه مانند تعداد فرم ها، ماژول ها و ... را مشاهده نمود این پنجره دارای سه دکمه به نامهای View Code ، View Project و Toggle Folders می باشد که کاربرد آنها به صورت زیر است : 
View Code : پنجره کدنویسی مربوط به پروژه ی فعال را نمایش می دهد. 
View Project : شکل ظاهری فرم فعال در پنجره را نشان می دهد. 
Toggle Folders : با هر بار فشرده شدن آن پوشه ی Forms به صورت متناوب به نمایش در آمده و پنهان می شود. 


6)	پنجره Properties : در پایین پنجره Project  قرار دارد و از آن برای تنظیم و تغییر مشخصه ها و خواص مربوط به کنترل ها استفاده می شود که در آینده به شرح کامل آن خواهیم پرداخت.

----------


## raika17metal

درس چهارم :
*داده‌ها در* *VB*
هر برنامه برای پردازش اطلاعات به داده نیاز دارد. ویژوال بیسیك از انواع داده ها پشتیبانی می كند به طور كلی داده ها را در VB می توان به دو نوع عددی و غیر عددی تقسیم بندی كرد.
داده های عددی عبارتند از :
1. Byte : برای ذخیره اعداد كوچك استفاده می شود.
2. Integer : برای اعدا صحیح مثبت و منفی استفاده می شود.
3.Long, Single, Double : برای اعداد صحیح مثبت و منفی، همچنین اعداد اعشاری استفاده می شود كه تفاوت آنها در میزان فضای اشغالی، محدوده و دقت آنها می باشد.
هر یك از این داده ها دارای محدوده خاصی بوده و مقدار معینی در حافظه به آن اختصاص می یابد كه شامل زیر گروه هایی به شكل های زیر هستند : 



نكته : داده های نوع Single, Double, Currency دارای محدوده ی زیادی می باشند كه چندین برابر Long است كه یادگیری آن دشوار می باشد به همین دلیل از ذكر محدوده آنها خود داری كردم.

*سایر نوع داده ها*
داده هایی كه تا كنون ذكر شدند همگی عددی می باشند. حال فرض كنید شما در برنامه نیاز دارید كه نام، نام خانوادگی و یا آدرس را ذخیره كنید به طور حتم ذخیره كردن این اطلاعات با عدد غیر ممكن خواهد بود. اما چاره چیست؟
همانطور كه قبلا هم ذكر شد VB از دو نوع داده پشتیبانی می كند یكی عددی و دیگری غیر عددی. با داده های عددی در قسمت بالا آشنا شدید حال به جزئیات داده های غیر عددی می پردازیم كه عبارتند از :
1. String : رشته (String) تركیبی از چند نویسه‌ (كاركتر) می باشد كه شما می توانید هر كاراكتر را یك حرف، علامت، عدد و ... فرض كنید. این نوع داده قابلیت ذخیره رشته ها را دارا می باشد كه یك رشته می تواند حاوی نام، آدرس و حتی شماره تلفن باشد.
نكته : داده های رشته ای (String) خود به نوع با طول ثابت و طول متغیر تقسیم می شوند كه بعدا در باره آنها توضیح خواهم داد.
2. Boolean : این داده فقط می تواند دو مقدار True (درست) و False (نادرست) بگیرد.
3. Date : از این داده برای اختصاص تاریخ و زمان استفاده می شود.
3.Variant : یكی از قدرتمندترین داده ها در VB می باشد كه می توان هر نوع داده ای را به آن اختصاص داد و خود VB آن را به بهترین نوع تبدیل می نماید.
جدول داده های غیر عددی در VB به شكل زیر است :





*اعلان متغیر و مقدار دهی به آن*
متغیر مکانی در حافظه است که محتوای آن ممکن است در حین اجرای برنامه تغییر کند. همچنین متغیر می توان برای نگه داری موقت داده ها استفاده نمود.
برای استفاده از یک متغیر باید آن را تعریف نمود و این کار به وسیله کلمه کلیدی Dim انجام می گیرد.
اگر متغیری را بدون تعریف فقط استفاده نمایید ویژوال بیسیک آن را به طور پیش فرض آن را از نوع Variant در نظر می گیرد. برای جلوگیری از این کار از منوی Tools گزینه Option را انتخاب کنید سپس از زبانه Editor در قسمت Code Setting گزینه Require Variable Declaration را تیک دار کنید.
با این کار ویژوال بیسیک شما را مجبور می سازد که قبل از استفاده از هر متغیر آن را تعریف کنید و در صورتی که از متغیری بدون تعریف استفاده نمایید به هنگام اجرا با خطا مواجه خواهید شد.
اما حالت کلی تعریف متغیر بصورت زیر است :

Dim VarName As DataType 
در این مثال VarName نام متغیر و DataType نوع داده ای می باشد که شما می توانید یک از انواع Integer, String, Double و ... را استفاده نمائید.
برای مثال :

Dim a as Interger 
در این اینجا ما متغیری به نام a از نوع Integer تعریف نمودیم برای تعریف متغیر های دیگر فقط کافی است که نام متغیر و نوع آن در مثال فوق تغییر دهید.
*قواعد نام گذاری متغیر ها*
برای نام گذاری متغیر ها باید موارد زیر را رعایت نمایید.
1) نام متغیر باید با یکی از حروف الفبا شروع شود.
2) نام یک متغیر می تواند حداکثر تا 255 کاراکتر باشد.
3) در نام گذاری متغیرها استفاده از فاصله مجاز نمی باشد.
4) نمی توانید از کلمات کلیدی و علائم مانند @, % و ... استفاده نمایید در این بین کاراکتر Underline یا _ یک استثنا می باشد.

----------


## raika17metal

درس پنجم : 
*مقدار دهی به متغیرها
* بعد از تعریف متغیر حال وقت آن رسیده که به آنها مقداری را نسبت دهیم یا به عبارتی آنها را مقداری دهی نماییم. حالت کلی مقداری دهی به متغیرها در ویژوال بیسیک به صورت زیر است :
مقدار = نام متغیر
در مثال زیر چند نمونه از مقدار دهی را مشاهده می نمایید :
A = "DehkadehIT"

B = True

C = #3/9/1986#

D = 10  +  5 * 3 
در تمامی مثال های فوق مقادیر سمت راست مساوی در متغیرهای سمت چپ ذخیره شده اند.
در مقدار دهی به متغیرها باید به چند مورد دیگر توجه کنید که عبارتند از :
1)     باید مقادیر با متغیر تناسب داشته باشد در غیر اینصورت در مرحله ویژوال بیسیک سعی می کند به صورت اتوماتیک مقدار را تبدیل کند که در این صورت امکان از دست رفتن اطلاعات وجود دارد. اگر هم ویژوال بیسیک نتواند این تبدیل را انجام دهد به هنگام اجرا با خطای Type Mismath مواجه خواهید شد.
2)       مقادیر رشته ای را باید بین "" قرار دهید.
3)       مقدار تاریخ و زمان را بین ## قرار دهید.
4)       برای متغیرهای منطقی یا Boolean فقط از مقادیر True و False استفاده نمایید در صورتی که از اعداد استفاده کنید هر عدد غیر صفری True فرض می شود.
*ثابت ها*
در قسمت قبل درباره متغیرها و ذخیره اطلاعات در آنها صحبت کردیم اما متغیرها تنها راه حل برای ذخیره سازی اطلاعات نیستند. برای ذخیره سازی اطلاعات از ثابت ها (Constants) نیز می توان استفاده کرد.
محتویات ثابت ها برخلاف متغیرها در طول برنامه تغییر نمی کند و از آن اغلب برای ذخیره و جایگزینی مقادیری که به خاطر سپردن آن سخت بوده یا همواره مقدار مشخصی است مانند عدد پی (3.14) استفاده می شود.
ثابت ها می توانند از نوع عددی یا رشته ای باشند که نوع عددی از تمامی کارکتر ها به جز نقل قول ("") پشتیبانی می کند.
تعریف ثابت ها تقریبا شبیه به متغیر ها است با این تفاوت که اولا با کلمه کلیدی Const تعریف می شود ثانیاً باید به هنگام تعریف مقدار دهی شود.
مثال :
Const p As Single = 3.14 در این مثال ما عدد پی را که یکی از اعداد پرکاربرد برای محاسبات ریاضی می باشد در ثابتی به نام p  ذخیره نموده ایم.

----------


## www.pc3enter.tk

این ها که کتاب برنامه سازی دوم هنرستان رشته ی کامپیوتر هست ؟؟؟؟

----------


## raika17metal

> این ها که کتاب برنامه سازی دوم هنرستان رشته ی کامپیوتر هست ؟؟؟؟


بله عزیزم این مطالب اولیه دقیقا از همون کتاب ذکر شده دلیلش هم به خاطر کلیشه ای بودن هستش اجازه بدید کمی جلوتر بریم بعد قضاوت کنید.

----------


## raika17metal

درس ششم :
*عملگرها در ویژوال بیسیک
*

عملگر ابزاری برای ترکیب داده های مورد نظر است. ویژوال بیسیک از انواع عملگرهای محاسباتی، مقایسه ای، منطقی و رشته ای متعددی پشتیبانی می کند که در جدول زیر عملگرهای محاسباتی و رشته ای متداول ویژوال بیسیک را مشاهده می کنید :



اولویت عملگرها
عملگرهای فوق دارای اولویت متفاوتی می باشد که ترتیب آنها عبارتند از :
1.	توان
2.	ضرب و تقسیم اعشاری
3.	تقسیم صحیح
4.	باقیمانده
5.	جمع و تفریق

نکته : عبارت داخل پرانتز اولویت بیشتری دارد.
نکته : اگر چند عملگر هم اولویت داشتیم به ترتیب از سمت چپ به راست اجرا می شود.
تمرین :
حاصل عبارت زیر چیست ؟
5 * (2+3)
پاسخ :
بله حق با شماست جواب 25 است.
تمرین : حاصل عبارت زیر چیست ؟



پاسخ :
اگر پاسخی غیر از 8 بدست آوردید دوباره سعی کنید.
تمرین : حاصل عبارت زیر چیست ؟


پاسخ : 
حاصل 3.5 می باشد.

----------


## raika17metal

درس هفتم : 
*Command Button*

از دکمه فرمان یا Command Button که در ویژوال بیسیک Command نام دارد می توان برای اجرا، شروع و توقف عملیات و ... استفاده نمود. Command یکی از پرکاربرد ترین کنترل های ویژوال بیسیک می باشد و به جرأت می توان گفت نمی‌توان برنامه‌ای یافت که از Command در آن استفاده نشده باشد.
هر کنترل دارای تعدادی رویداد و تعدادی مشخصه می باشد و در آینده به طور مفصل راجع به آنها بحث خواهیم کرد.
مهمترین رویداد Command، رویداد Click آن است. دستوراتی که برای این رویداد می نویسیم هنگامی که کاربر روی این دکمه کلیک کند اجرا می شوند.
مهمترین خواص این کنترل خاصیت Name که نام کنترل را مشخص می کند و خاصیت Caption که متن روی فرم را مشخص می کند می باشند.
در نام گذاری کنترلها(مانند Command) باید نکاتی را که برای نام گذاری متغیرها ذکر شد را رعایت کنید.
نام کنترل در زمان کد نویسی کاربرد دارد.
تمرین :
برنامه بنویسید که با کلیک روی دکمه Show متن Welcome To Visual Basic 6.0 را نمایش دهد.
حل:
ویژوال بیسیک را اجرا کرده و یک پروژه استاندارد را ایجاد کنید. حال از نوار ابزار یک کنترل Command به فرم اضافه کنید.
کنترل را به دو روش می توان افزود :
دابل کلیک روی کنترل در نوار ابزار
انتخاب کنترل در نوار ابزار سپس کلیک روی فرم و انجام عمل Drag & Drop
نام کنترل را از پنجره Properties به cmdShow و Caption آن را به Show تغییر دهید.
نکته : پنجره Properties معمولا در سمت راست، زیر پنجره Project قرار دارد در صورتی که این پنجره را مشاهده نمی کنید از منو View گزینه Properties Window را انتخاب کرده یا کلید F4 را فشار دهید.
حال روی Command دابل کلیک کنید پنجره کد باز شود.
نکته : زمانی که روی کنترل Command دابل کلیک می کنید بطور پیش فرض رویداد کلیک آن فراخوانی می شود.
حال کد زیر را بین Private Sub cmdShow_Click و End Sub بنویسید.

   MsgBox "Welcome To Visual Basic 6.0"
 


 
حال کلید F5 را فشار دهید تا برنامه اجرا کنید. با کلیک روی دکمه Show برنامه رویداد کلیک فراخوانی می شود و پیغام را نمایش می دهد.
در مورد تابع MsgBox که سبب نمایش پیغام می شود طی مقاله ای بطور مفصل بحث خواهد شد.

----------


## raika17metal

درس هشتم : 
*متد Print*برای نمایش یک متن روی فرم یا کادر تصویر (Picture Box) از این متد استفاده می شود 
به مثال زیر توجه کنید :
 
Print "Dehkadeh-IT"با این فرمان متن Dehkadeh-IT بر روی فرم نمایش می یابد.
نکته 1 : اگر پس از فرمان Print هیچ عبارتی استفاده نشود سبب ایجاد یک خط خالی می شود.
پس از متد Print می توان یک یا چند عبارت نوشت که برای جدا کردن عبارت ها از کاما (,) و سمی کالون (;) استفاده می شود.
اگر بین عبارات از کاما استفاده کنید، شئ جاری (فرم) به ناحیه های 14 قسمتی تقسیم می شود و هر عبارت در یک ناحیه نمایش داده می شود و اگر عبارتی به بیش از 14 فضا برای نمایش نیاز داشته باشد، فضای مورد نیاز را از ناحیه بعدی در اختیار خواهد گرفت.
اما در صورتی که چند عبارت را با سمی کالون جدا کنید عبارت ها بدون فاصله در خروجی نمایش داده خواهند شد.
نکته 2: معمولا هر متد Print باعث انتقال خودکار مکان نما به سطر بعد می شود اما اگر از سمی کالون در انتهای هر فرمان Print استفاده کنیم خروجی ها پشت سر هم نمایش داده می شوند.
به مثال های زیر توجه کنید :
مثال 1)

Print "Dehkadeh"Print "-"Print "IT"خروجی این فرمان بصورت زیر خواهد بود.
Dehkadeh-IT 
مثال 2) 

Print "Dehkadeh";Print "-";Print "IT";خروجی این برنامه به شکل زیر است : 
Dehkadeh-IT 
نکته 3 : هنگام چاپ دو متغیر داده ای یا عددی اگر بین آنها از سمی کالون استفاده کنید هنگام نمایش بین آنها فاصله قرار می‌گیرد.
نکته 4 : دقت کنید که همیشه مقادیر رشته ای را بین دو " " قرار دهید.

----------


## raika17metal

درس نهم :
*متد CLS
* به کمک این متد می توان متن یا گرافیک موجود روی فرم یا کادر تصویر را در زمان اجرا پاک کرد.
نکته : این متد هیچ تأثیری روی کنترل ها و تصاویر مربوط به مشخصه Picture فرم نخواهد داشت.
تمرین : برنامه ای بنویسید که عبارات Visual Basic و Programer & Developer را در دوسطر به نحوی  روی فرم چاپ کند که یک خط فاصله بین آنها ایجاد شده  سپس با کلیک روی یک Command (دکمه فرمان) متن مورد نظر پاک شود. حل : این برنامه نیاز به سه دکمه برای چاپ متن، پاک کردن و خروج از برنامه دارد. ابتدا سه Command (دکمه فرمان) به فرم بیافزایید و مشخصات آنها را طبق جدول زیر مقدار دهی کنید :

حال کدهای زیر را برای هر یک از دکمه ها بنویسید : 
   Private Sub CmdPrint_Click()
  Print "Visual Basic"
  Print
  Print "Programer & Developer"
  End Sub
  
   Private Sub CmdCls_Click()
  Form1.Cls 
  End Sub


      Private Sub CmdExit_Click()
         Unload Me
  End Sub
  
حال برنامه را اجرا کنید

----------


## raika17metal

درس دهم :
*توابع داخلی
* توابع داخلی ویژوال بیسیک برای انجام کارهای محساباتی، عملیاتی و ... مورد استفاده قرار می گیرد. توابع یک یا چند آرگومان را به عنوان ورودی دریافت کرده و سپس با توجه به عملکرد تابع عملیات مربوطه را انجام می دهند که این آرگومانها داخل پرانتز در مقابل تابع قرار گرفته و آنها را با کولن (,) از هم جدا می کنیم.
*تابع* *SPC*
همانطور که می دانیم یک عبارت می تواند ترکیبی از از اعداد، حروف، متغیر ها و ... باشد. برای نظم بخشیدن به عبارات در متد Print از دو تابع SPC و Tab استفاده می شود.
تابع Space آرگومانی (عدد) را به عنوان ورودی دریافت می کند و به تعداد آن فاصله ایجاد می کند. برای مثال شما در یک برنامه می خواهید نام، فامیلی و آدرس یک شخص را دریافت کنید و به هنگام نمایش آن قصد دارید آدرس با کمی فاصله به چاپ برسد. در این شرایط استفاده از تابع Space یک راه حل کار آمد خواهد بود.
شکل کلی تابع Space به شکل زیر است :
() Space در داخل پرانتز شما آرگومان ورودی را قرار می گیرد. *تابع* *Tab* شکل کلی تابع Tab مانند SPC است با این تفاوت که تابع Tab مکان نما را به آرگومان ورودی انتقال می دهد. به مثال زیر توجه کنید : ما قصد داریم برای نشان دادن عملکرد تو تابع Tab و Space  برنامه ای طراحی کنیم که شامل دو قسمت می باشد. در قسمت اول شما با وارد نام و نام خانوادگی و تعیین فاصله بین آنها، آنها را چاپ می کنید و در قسمت دوم با وارد کردن یک حرف و تعیین Tab حرف مورد نظر را در خانه تعیین شده توسط خودتان چاپ می کنید. تذکر :به تقسیم بندی صفحه مانیتور هنگام استفاده سمی کالون ";" که در مقاله قبلی توضیح داده شد توجه فرمایید.

----------


## raika17metal

درس یازدهم :
تابع MessageBox()
تابع MessageBox() برای اطلاع رسانی به کاربر یا کسب اجازه از او برای ادامه کار برنامه استفاده می شود. بدون شک نمونه های مختلفی از این تابع را هنگام کار با ویندوز یا برنامه های کاربردی مشاهده کرده اید که از جمله آنها می توان به کادری که در هنگام خروج از برنامه ظاهر می شود اشاره کرد که در آن اگر شما Yes را کلیک کنید از برنامه خارج شده و اگر No را کلیک کنید به محیط برنامه باز خواهید گشت.
تابع MessageBox() در ویژوال بیسیک دارای آرگومانهایی می باشد که  از جمله مهترین آنها می توان به 1. عنوان 2.تعداد دکمه ها 3. متن پیام و علامت اشاره کرد. حالت کلی استفاده از تابع MessageBox() به شکل زیر است :
a = MsgBox (strPrompt [, intStyle] [, strTitle] )

در تابع MessageBox() آرگومان strPrompt رشته مورد نظر برای نمایش. آرگومان intStyle برای نمایش دکمه ها و strTitle برای نمایش عنوان پیام استفاده می شود که از بین این سه آرگومان اولی اجباری و بقیه اختیاری می باشند. 
نمونه ای از دستور MsgBox در ویژوال بیسیک بدین صورت است :
a = MsgBox("Are you sure?",vbYesNo + vbQuestion , "Exit")
از متغیر a  برای نگه داری مقدار برگشتی تابع استفاده می شود این مقدار عددی بین 1 تا 7 می باشد که هر یک از این اعداد در ازای انتخاب هریک از گزینه ها برگشت داده می شود که جزئیات آن را می توانید در جدول زیر مشاهده کنید :

اگر دقت کرده باشید در مثالی که دستور MsgBox زده شد برای درج دکمه ها از ثابت vbYesNo و برای درج آیکون از ثابت vbQuestion استفاده کردیم. اما این تنها راه حل نیست اگر این گونه کد نویسی باب میل شما نیست می توانید از اعداد به جای هر ثابت استفاده کنید. جدول زیر راهنمای  تعیین تعداد و نوع دکمه های MsgBox می باشد :

مقادیر جایگزین ثابت های آیکون نیز در جدول زیر آمده است :


تمرین : برنامه ای بنویسید بعد از دریافت نام، از طریق تابع MessageBox() به شما خوش آمد گویی کند.
حل تمرین :
این برنامه نیاز به یک Textbox و یک Command دارد. بعد از افزودن آنها به فرم نام Textbox را به txtName تغییر دهید. نام Command را btnShow و Caption آن را به Show تغییر دهید.
کد زیر را برای رویداد کلیک btnShow  بنویسید :

    Dim a As Integer
  
a = MsgBox(“Welcome ” & txtName.Text  , vbOKOnly + vbInformation, “Welcome”)

----------


## raika17metal

درس دوازدهم
*تابع* *InputBox()* همانطور که در مقاله قبل توضیح داده شد از تابع MsgBox برای اطلاع رسانی به کاربر استفاده می شود. تابع دیگری به نام InputBox وجود دارد  که با استفاده از می توان علاوه بر اطلاع رسانی به کاربر پاسخ مورد نیاز برنامه را هم دریافت نمود. برای مثال فرض کنید شما برنامه ای طراحی کرده اید که با گرفتن نام هر فرد برای وی یک فرم استخدام چاپ می کند. برای این کار کافی است شما به وسیله تابع InputBox به کاربر اطلاع دهید که برنامه به نام وی نیاز دارد و پس از وارد کردن نام فرم استخدام برای وی چاپ خواهد شد.
شکل کلی تابع InputBox بصورت زیر است :

    strResult = InputBox(strPrompt[,strTitle][,strDefult][,intX][,intY])  

تابع InputBox مقداری را از نوع Variant بر می گرداند و این بدان معنی است که شما برای گرفتن پاسخ هیچ محدودیتی از نظر رشته ای، عددی و ... نخواهید.
در مثال بالا strResult مقداری است که کاربر در کادر InputBox وارد کرده است. یا به عبارتی مقدار برگشتی تابع می باشد.
همچنین این تابع دارای یک آرگومان اجباری و چهار آرگومان اختیاری می باشد. اولین آرگومان مربوط به پیامی است که قصد دارید به کاربر اعلام کنید. آرگومان دوم عنوان، آرگومان سوم متنی را به عنوان پاسخ پیش فرض در کادر قرار می دهد و آرگومانهای پنجم و ششم محل نمایش پنجره InputBox را مشخص می کنند.
حال با حل تمرینی قصد داریم نحوه استفاده از این تابع برای شما روشن‌تر شود.
تمرین  :
برنامه ای بنویسید که از طریق InputBox یک بار نام  و یک بار سن کاربر را دریافت کرده سپس متن مناسبی را در یک Label برای نام و سن او نمایش دهد. 
                مثلا : "آقای نوبخت شما در حال حاضر 21 ساله می باشید"
حل تمرین :
این برنامه نیاز به یک Command و یک Lable دارد. بعد از افزودن آنها به فرم تغییرات زیر را در آنها اعمال کنید.
نام Command را به cmdShow و Caption آن را به Show تغییر دهید.
نام Lable را نیز به lblShow تغییر داده و Caption آن را خالی کنید.
نام فرم را به frmMain و Caption آن را به InputBox تغییر دهید.
حال کد زیر را برای رویداد کلیک cmdShow بنویسید.

    Private Sub cmdShow_Click()
  
    Dim name As String
  
    Dim age As Integer
  
    name = InputBox("نام را وارد  کنید")
  
    age = Val(InputBox("سن را وارد کنيد"))
  
    lblShow.Caption = "آقاي " & name & " شمار در حال حاضر " & age & " ساله هستيد "
  
End Sub

----------


## pedram25teh

اقا بقیه این آموزش ویژوال بیسیک کجاست؟؟؟

----------


## محسن واژدی

> اقا بقیه این آموزش ویژوال بیسیک کجاست؟؟؟


سلام عليكم
از تاريخ تاپيك و طولاني شدن آن معلوم است  كه ديگر ادامه پيدا نميكند
هركجاي برنامه كه به مشكل برخورد كرديد مطرح كنيد تا با ياري دوستان برطرف شود

موفق باشيد

----------

