howrii

اینترنت و فناوری اطلاعات

howrii

اینترنت و فناوری اطلاعات

آموزش ویژوال بیسیک مقدماتی (بخش چهاردهم)

آموزش ویژوال بیسیک مقدماتی (بخش چهاردهم)

بسم الله الرحمن الرحیم
سلام
جلسه قبل فرا گرفتید که چگونه پروژه های خود را چند فرمی کنید و نیز با نحوه ی حرک روی چند فرم را یاد گرفتید. حال فرض کنید شما میخواهید برنامه ای بنویسید که از یک فرم به عناصر فرم های دیگر دسترسی و کنترل داشته باشید. برای این کار کافی است نام فرم مورد نظر را نوشته سپس یک کاراکتر نقطه،بعد نام عنصر مورد نظر در آن فرم و بقیه ی دستورات مانند دسترسی به خصوصیات (Properties ) و متدها ( Methods ) که قبلا فرا گرفتید عمل میکنید.
مثال: میخواهیم قطعه برنامه ای بنویسیم که این برنامه شامل 2 فرم و یک عنصر TextBox و  CommandButton در فرم1 بوده، همچنین یک عنصر Label در فرم2 است. کاربر متنی را در عنصر Text1 وارد کرده و با زدن دکمه ی موجود، متن عنصر Label2 در فرم2 برابر متن عنصر Text1 بوده و نیز پس از زدن دکمهدر فرم1، فرم1 مخفی و فرم 2 به نمایش درآید:
حل : برای این کار میتوانیم از دو روش (الگوریتم) استفاده کنیم. در روش اول: دستورات را داخل رویداد Click عنصر Command1 بنویسیم، یعنی وقتی دکمه ی مورد نظر در فرم1 را زدیم این عمل انجام شود:
Private Sub Command1_Click()
Form2.Label1.Caption .Text1.Text
Form2.Show
Form1.Hide
End Sub
اما روش دوم: میتوانیم در رویداد کلیک دکمه فقط بنویسیم فرم1 را مخفی و فرم2 را نمایش بده، سپس در رویداد Load عنصر فرم2 دستور مورد نظر را بنویسیم:
{در فرم 1}
Private Sub Command1_Click()
Form2.Show
Form1.Hide
End Sub
{در فرم 2}
Private Sub Form_Load()
Form2.Label1.Caption = Form1.Text1.Text
End Sub
اگر به روش دوم دقت کنید، در رویداد Load فرم2 نیازی نبود که نام فرم2 را ذکر کنیم چون در هر فرمی که باشیم نیازی به ذکر نام آن فرم قبل از نام عناصرش نیست، اما اینکار موجب خوانایی بالاتر برنامه میشود و در مواقعی نیز به یاری شما خواهد رسید پس:
سعی کنید در هنگام نوشتن برنامه تنبلی ننموده و از نوشتن نام فرم ها صرف نظر نکنید (البته در برنامه های کوچک ضرورتی ندارد).دو روش فوق که برای اجرای یک حالت میباشند تفاوتی از نظر عملکرد با یکدیگر ندارند اولی اینگونه تفاوتها ناشی از سلیقه ی برنامه نویس و در برخی موارد زکاوت برنامه نویس بستگی دارد!
در بالا اشاره کردم که در برنامه های کوچک ضرورتی ندارد، بد نیست بدانید که به چه برنامه هایی کوچک و یا بزرگ میگویند. اگر خیلی ساده بخواهم بیان کنم برنامه هایی که کمتر از صدهزار خط هستند را برنامه های کوچک، برنامه هایی که بین صدهزار تا پانصدهزار خط هستند را برنامه های متوسط و برنامه های بیش از پانصدهزار خط را برنامه های بزرگ میگویند.
Me : این دستور بجای فرم فعال کنونی استفاده میشود. از مزایای آن ساده نویسی، خوانایی فوق العاده بالا و نیز قابلیت فراخوانی مجدد در قسمتهای مختلف اشاره کرد. مثلا بجای اینکه بنویسیم  Form1.Hide مینویسیم Me. Hide
ObjectName_Event : این حالت ساختار دستوری بسیار کارا و بهینه است. فرض کنید شما در رویداد کلیک دکمه ای نوشتید که برنامه به پایان برسد و بخواهید که همین دستور در رویدادی از یک برچسب یا عنصر دیگر نیز اجرا شود، برای این کار در رویدادمورد نظر عنصر دوم، ابتدا نام عنصری را که میخواهید دستورات موجود در رویدادش را فراخوانی کنید را نوشته سپس یک کاراکتر زیر خط ( UnderLine ) یعنی _ قرار داده و در آخر نام رویداد مورد نظر را درج میکنید مانند:
Command1_Click
اهمیت و جایگاه این دستور هنگامی محسوس تر میشود که شما دستورات زیادی را در رویداد عنصر مورد نظر داشته باشید و یا از این دستورات در قسمت های زیادی بخواهید استفاده کنید. همچنین این کار سبب کاهش حجم دستوری و در نتیجه افزایش خوانایی برنامه خواهد شد.
جلسه ی بعد جلسه ی آخر آموزش ویژوال بیسیک6 در سطح مقدماتی خواهد بود. عزیزانی که در این سری مقالات مشکل دارند، سوالات خود را میتوانند مطرح کنند و یقینا به آنان پاسخ داده خواهد شد. همچنین دوستانی که در سطح بالاتر (هر سطحی) فعالیت دارند اگر هرگونه مشکلی اعم از نیاز به کد برنامه و یا راهنمایی داشته باشند نیز سوالات و یا مشکلات خود را مطرح کرده و مطئمن باشند که برای رفع مشکل آنها تلاش خود را خواهیم کرد.
جلسه ی بعد چند دستور دیگر را فرا گرفته و نیز کمی شما را برای سطح مقدماتی آماده خواهیم کرد.

 

 نوشته شده  توسط سید سعید فرزاد

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد