آموزش سی‌شارپ C# – بخش ۴

آموزش سی‌شارپ C# – بخش ۴
  • 1391/10/9
  • Jeff Mosawy
  • 16
  • مقدمه

با نام خدا؛

در بخش پیش از آموزش زبان سی‌شارپ، شما اولین کد خود را در محیط زیبا و حرفه‌ای Visual Studio نوشتید. اگر چه دیدن کامپایل شدن برنامه یک حس خوبی دارد، اما قطعاً هنوز اول راه هست و ما تنها یک رشته (=چند کاراکتر کنار هم) را کامپایل کردیم.

در این بخش از آموزش – بخش چهارم – مطابق با قولی که قبلاً به شما داده بودم، از محیط خسته‌کننده Console جدا می‌شویم و به محیط جذاب و کاربردی Windows Form Application روی می‌آوریم. با یک بسم‌الله شروع می‌کنم.

  • اولین Windows Form Application شما!

در Windows Form Application، محیطی به نام Form وجود دارد که تقریباً تمامی کدنویسی‌های شما در پشت پرده‌ی آن انجام خواهد گرفت. در ابتدا این Form برای شما کاملاً خالی می‌باشد و این شمای برنامه‌نویس هستید که می‌بایست توسط ابزارها و کدها، برحسب نیازهای خودتان، از آن یک برنامه‌ی کاربری بسازید. می‌دانید که اساساً در Formها، ابزارهایی همانند جعبه متن (Text Box)، لیبل (Label)، منوها (Menus) و … قرار می‌گیرند. سی‌شارپ تمامی این ابزارهای اساسی را برای شما مهیا می‌سازد و شما کافیست آن‌ها را کد نویسی کنید. البته که در مراحل حرفه‌ای کار، شما می‌توانید ابزارهای مورد نیاز خودتان را بسازید و یا با استفاده از componentهای آماده، نیازهایتان را برطرف کنید.

خوب، اکنون به سراغ ساختن یک پروژه‌ی جدید با استفاده از Windows Form Application (یا همان Windows Application) می‌پردازیم. برای شروع، پس از اجرای نرم‌افزار Visual Studio، از منوی بالا، گزینه‌ی New Project را از File انتخاب کنید. پنجره‌ای همانند زیر را مشاهده خواهید کرد. (در نسخه‌های مختلف Visual Studio، این پنجره دارای ظاهرهای متفاوتی می‌باشد، اما ماهیت همه‌ی آن‌ها یکی است.)

از پنجره‌ی باز شده، بر روی Windows Forms Application کلیک کرده تا انتخاب شود. در بخش نام پروژه، همان نام پیشفرض را،‌ یعنی WindowsFormsApplication1، رها کنید و با کلیک بر روی OK، به ادامه فرآیند بپردازید. محیط زیر را خواهید دید:

تفاوت کاملاً مشخصی که میان پروژه‌ی Console Application و Windows Form Application وجود دارد، وجود یک Form خالی می‌باشد. در سمت چپ، به جعبه ابزارها (Toolbox) دقت کنید. ما توسط این بخش، کنترلرهای لازم را در Form ایجاد می‌کنیم و در نهایت، آن‌ها را کدنویسی خواهیم کرد.

اگر که احیاناً شما نمی‌توانید Toolbox را ببینید، احتمالاً شما یک پنجره‌ي خالی همانند زیر خواهید دید.

اگر چنین هست، موس خود را بر روی سربرگ Toolbox که در سمت چپ هست، نگه‌دارید. مشاهده خواهید کرد که Toolbox مجدداً ظاهر می‌شود. برای این‌که حالت نمایش آن را دائمی کنید، می‌توانید بر روی آیکون مشخص شده (Pin) کلیک کنید تا نمایش آن به‌صورت ثابت بماند.

اکنون به بخش Solution Explorer یک نیم‌نگاهی بیاندازید! اگر آن را با Solution Explorer پروژه قبلی که بصورت Console Application بود مقایسه کنید، متوجه خواهید شد که تمامی آیتم‌ها همانند هم بوده؛ تنها در Windows Form Application یک آیتمی به نام Form مشاهده خواهید کرد.

 

اکنون بر روی Program.cs دابل-کلیک کنید. کدهای آشنایی را خواهید دید.

 

عکس زیر، از فایل Program.cs پروژه Console Application است

 

هر دوی آن‌ها همان خط‌های شروع شده با Using را دارند، یک namespace مشابه وجود دارد، کلاسی با نام Program نیز همچنان هست و متد (تابعی) با نام Main.

متد Main، نقطه شروع برنامه شماست. کدهایی که در میان براکت‌های متد Main وجود دارند، اولین خط‌هایی هستند که اجرا خواهند شد. آخرین خط از آن‌ها، همانطور که در عکس‌های بالا مشخص شده است، Form1 را برای شما اجرا می‌کند.

شما کارهای دیگری نیز در این متد Main می‌توانید انجام دهید. برای مثال، فرض کنید که شما یک برنامه‌ای دارید که در هنگام اجرا می‌خواهد اتصال به اینترنت را بررسی کند. اگر یک اتصال به اینترنت را بیابد، اطلاعاتی را برای شما از طریق بانک اطلاعاتی فراخوانی می‌کند و به نمایش می‌گذارد. این‌کار را دقیقاً می‌تواند در متد Main انجام داد. یعنی کدی بنویسید که آیا سیستم به اینترنت وصل است یا خیر؛ اگر پاسخ خیر باشد، پنجره‌ی دومی را نشان دهد. (مثلاً خطای عدم ارتباط با اینترنت)؛ اگر هم پاسخ بله است، Form را نمایش دهد. (همین اولین فرم منظور است.)

اما نگران این کد‌ها که شاید کمی شما را گیج کرده‌است، نباشید! چیزی که فعلاً باید حواستان به آن جمع باشد این است که متد Main در هنگام شروع برنامه، اجرا می‌شود و Program.cs فایلی است که متد Main در آن ذخیره می‌شود.

اما فعلاً ما در Program.cs کدی را نخواهیم نوشت. از طریق سربرگ فوق، بر روی Program.cs راست کلیک کرده و بر روی Close کلیک کنید. Form مجدداً نمایش داده می‌شود.

 

اگر که می‌خواهید بدانید که ما بیشترین کد‌هایمان را در کجا خواهیم نوشت، با مراجعه مجدد به Solution Explorer، بر روی Form1.cs راست کلیک کنید.

این منو گزینه‌هایی با نام‌های View Code و View Designer را دارا می‌باشد. View Designer همان فرمی است که هم‌اکنون می‌بینید. View Code، محلی است که کد‌های ما آنجا ذخیره خواهند شد. بر روی آن کلیک کنید.

 

این کد‌های خود Form می‌باشد و نباید به آن‌ها دست برد.

این‌بار، این کد‌ها دارای تعداد بیشتری از کد‌هایی که با Using شروع شده است، می‌باشد. هیچ نگران این‌ها نباشید. استفاده از کلمه Using تنها به این معنی است که از کد‌هایی استفاده شود که قبلاً به‌صورت آماده نوشته و تهیه شده‌اند.

کدها همچنان یک بخشی با نام partial class Form1 دارد. آوردن نام Partial (=بخشی، قسمتی از) به این دلیل است که شما تنها بخشی از کد‌ها را می‌بینید و قسمتی دیگر از دید شما پنهان هستند. برای دیدن قسمت‌های پنهان آن، دوباره به Solution Explorer مراجعه کنید و طبق تصویر، Form1.cs را باز کرده و بر روی Form1.Designer.cs دابل کلیک کنید.

 

 

مجدداً، partial class Form1 را خواهید دید که تمامی کد‌ها در اینجا هستند. می‌توانید با کلیک کردن بر روی علامت + در کنار Windows Form Designer generated code، کد‌ها را ببینید که همانند زیر هستند:

 

متد IntializeComponent متدی است که به‌صورت اتوماتیک هنگام ساختن یک پروژه Windows Form Application برای شما تولید می‌شود. هنگامی که ابزارهایی را همانند دکمه، جعبه متن، لیبل و …  را قرار می‌دهید، کدهای بیشتری به‌صورت اتوماتیک برای شما تولید می‌شوند.

اما خیالتان را راحت کنیم که فعلاً کاری با اینجا نداریم؛ پس با خیال راحت، پنجره مربوط به Form1.Designer.cs را ببندید.

Form1 را مجدداً باز کنید. اگر آن را بسته بودید، با مراجعه به Solution Explorer و با راست کلیک کردن بر روی آن، بر روی View Designer کلیک کنید. پنجره زیر نمایان می‌شود:

 

فعلاً ما بدون اضافه نمودن هیچ ابزاری، آن را اجرا می‌کنیم. برای اجرا، از منوی بالای برنامه Visual Studio، Debug را باز کنید و بر روی Start Debugging کلیک کنید.

 

هنگامی که بر روی Start Debugging کلیک می‌کنید، Visual Studio شروع به ساخت اولین برنامه شما می‌کند. اگر در این میان، مشکلی وجود داشته باشد، با یک پیغام خطایی شما را مطلع می‌سازد.

الان که برنامه‌ی شما اجرا شده است، می‌توانید خیلی راحت ببینید که شما نیز توانستید پنجره‌ای همانند دیگر پنجره‌های نرم‌افزارها بسازید … دکمه قرمز برای خروج، دکمه‌های Minimize و Maximize نیز وجود دارند! حال برنامه راببندید.

از این به بعد، هر زمانی که از لفظ «اجرای برنامه» استفاده کردیم، منظور آن خواهد بود که شما به منوی Debug مراجعه کنید و بر روی Start Debugging کلیک کنید.

فعلاً جلسه به همین‌جا خاتمه می‌یابد و انشاءالله در جلسه آینده،‌ ابزارهایی را به فرم خودمان منتقل خواهیم کرد.

سوالی داشتید حتماً بپرسید!

دیدگاه خود را وارد کنید
تعداد دیدگاه ها : 16 دیدگاه
    1. با سلام،

      چشم، حتماً!
      من PDF کردن مقالات را اصلاً از یادم نبردم، اما باور بفرمایید الان زمان امتحانات دانشگاه‌ها هست و بنده به‌شدت وقت کمی دارم. آموزش‌ها را هم در این مدت دیر به دیر درحال آماده سازی آن هستم و آن‌ها را متوقف نخواهم کرد -انشاءالله-، فقط و فقط به‌خاطر این هست که شما و دیگر بازدیدکنندگان هیچ‌وقت تصور نکنند که این آموزش نصفه‌نیمه است.

      امیدوارم که عذر بنده را پذیرا باشید و قولی از بنده را همین‌جا داشته باشید که از اولین آموزش تا آخرین بخش منتشر شده را در پستی جداگانه، بخش به بخش و به‌صورت رایگان قرار خواهم داد.

      موفق باشید!

    1. سلام دوست عزیز،

      شما می‌توانید ما مراجعه به این لینک و بررسی صفحات ۱ تا ۳ تمامی بخش‌ها را پیدا کنید: https://www.gooyait.com/category/articles-tutorial/barnameh

      موفق باشید!

  1. سلام
    در باره این دو مینو در سی شارپ Menu Strip
    Status Strip مغلومات میخواستم تشکر از سایت خوب تون .

  2. سلام آقای موسوی خسته نباشید
    من تازه آموزش سی شارپو توسط شما شروع کردم یه سوال اینکه من اصلا toolbox رو ندارم چجوری میتونم بیارمش کنار صفحه؟

    1. سلام دوست عزیزم،

      شما باید منوی Toolbox رو اضافه کنید تا بتونید اشیاء آماده در سی شارپ رو اضافه کنید.

    2. ببخشید ولی میشه بگید چجوری باید منوی toolbox رو اضافه کنم؟

    3. سلام دوست عزیزم،

      از منوی بالا، View را انتخاب کرده و بر روی Toolbox کلیک کنید.
      موفق باشید!

  3. سلام لطفا در مورد اینکه چه طوری برای محاسبه ی فاکتوریل-توان-سری فیبوناچی-توابع بازگشتی و غیربازگشتی و هر برنامه ی دیگه ای چه طوری فرم ایجاد و چه کدی بنویسیم.؟
    و اینکه از کجا بفهمم از چه کنترلی برای محاسبه ی چه برنامه ای استفاده کنم.
    خواهش می کنم راهنماییییییییییییییییییی بفرماییییییییییییییییییییییید.
    فوووووووووووووووووووووووووررررررررررررررررررررییییییییییییییییییییییییی
    pleaseeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

  4. واقعا خدا قون.خسته نباشید.دمتون گرم.انشالله توی این دنیا هرچی میخواید بش برسید و عاقبت به خیر بشید.به امید اینکه همه دعای سلامتی و طول عمر برای شما بکنند.باتشکر.

  5. میشه بگید توی form1.Designer.cs چرا توضیحات ( که به رنگ سبز در اومدن ) سه تا اسلش قبل خودشون دارن؟ ما خوندیم که برای توضیحات یک خطی باید دو تا اسلش بزاریم
    سوال دوم اینکه یه سری از کد ها به رنگ خاکستری هستند. رنگ خاکستری اون کد ها به چه معنیه؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *