تابع MessageBox
تابع MessageBox() برای اطلاع رسانی به کاربر یا کسب اجازه از او برای ادامه کار برنامه استفاده می شود. بدون شک نمونه های مختلفی از این تابع را هنگام کار با ویندوز یا برنامه های کاربردی مشاهده کرده اید که از جمله آنها می توان به کادری که در هنگام خروج از برنامه ظاهر می شود اشاره کرد که در آن اگر شما Yes را کلیک کنید از برنامه خارج شده و اگر No را کلیک کنید به محیط برنامه باز خواهید گشت.
تابع MessageBox() در ویژوال بیسیک دارای آرگومانهایی می باشد که از جمله مهترین آنها می توان به 1. عنوان 2.تعداد دکمه ها 3. متن پیام و علامت اشاره کرد. حالت کلی استفاده از تابع MessageBox() به شکل زیر است :
intMsg = MsgBox (strPrompt [, intStyle] [, strTitle] )
در تابع MessageBox() آرگومان strPrompt رشته مورد نظر برای نمایش. آرگومان intStyle برای نمایش دکمه ها و strTitle برای نمایش عنوان پیام استفاده می شود که از بین این سه آرگومان اولی اجباری و بقیه اختیاری می باشند.
نمونه ای از دستور MsgBox در ویژوال بیسیک بدین صورت است :
intMsg = MsgBox("Are you sure?",vbYesNo + vbQuestion , "Exit")
از متغیر intMsg برای نگه داری مقدار برگشتی تابع استفاده می شود این مقدار عددی بین 1 تا 7 می باشد که هر یک از این اعداد در ازای انتخاب هریک از گزینه ها برگشت داده می شود که جزئیات آن را می توانید در جدول زیر مشاهده کنید :
|
مقدار |
نام ثابت |
توضیح |
|
1 |
vbOk |
هنگامی که کاربر Ok را کلیک کند |
|
2 |
vbCancel |
هنگامی که کاربر Cancel را کلیک کند |
|
3 |
vbAbort |
هنگامی که کاربر Abort را کلیک کند |
|
4 |
vbRetry |
هنگامی که کاربر Retry را کلیک کند |
|
5 |
vbIgnor |
هنگامی که کاربر Ignor را کلیک کند |
|
6 |
vbYes |
هنگامی که کاربر Yes را کلیک کند |
|
7 |
vbNo |
هنگامی که کاربر No را کلیک کند |
اگر دقت کرده باشید در مثالی که دستور MsgBox زده شد برای درج دکمه ها از ثابت vbYesNo و برای درج آیکون از ثابت vbQuestion استفاده کردیم. اما این تنها راه حل نیست اگر این گونه کد نویسی باب میل شما نیست می توانید از اعداد به جای هر ثابت استفاده کنید. جدول زیر راهنمای تعیین تعداد و نوع دکمه های MsgBox می باشد :
|
مقدار |
نام ثابت |
توضیح |
|
0 |
vbOkOnly |
فقط دکمه Ok |
|
1 |
vbOkCancel |
دکمه های Ok و Cancel |
|
2 |
vbAbortRetryIgnor |
برای دکمه های Abort,Retry,Ignor |
|
3 |
vbYesNoCancel |
برای دکمه های Yes, No, Cancel |
|
4 |
vbYesNo |
برای دکمه های Yes, No |
|
5 |
vbRetryCancel |
برای دکمه های Retry, Cancel |
مقادیر جایگزین ثابت های آیکون نیز در جدول زیر آمده است :
|
مقدار |
نام ثابت |
توضیح |
|
16 |
vbCritical |
آیکن پیام بحرانی |
|
32 |
vbQuestion |
آیکون علامت سوال |
|
48 |
vbExclamation |
آیکن اخطار |
|
64 |
vbInformation |
آیکن اطلاعات |
تمرین : برنامه ای بنویسید بعد از دریافت نام از طریق تابع MessageBox() به شما خوش آمد گویی کند.
حل تمرین :
این برنامه نیاز به یک Textbox و یک Command دارد. بعد از افزودن آنها به فرم نام Textbox را به txtName تغییر دهید. نام Command را btnShow و Caption آن را به Show تغییر دهید.
کد زیر را برای رویداد کلیک btnShow بنویسید :
Dim intMsg as integer
("intMsg = MsgBox("Welcome Dear " & txtName.Text , vbOKOnly + vbInformation, "Welcome
حال بعد از اجرای برنامه نامی را در TextBox وارد کرده و Show را کلیک کنید.