קוד התוכנית

עודכן דף :
תאריך יצירת דף :

בואו נסתכל על הקוד של התוכנית בפעולה. אני משתמש ב- C# כשפת התכנות, אבל אני אסביר את זה כאילו אני יודע את C# במידה מסוימת. אם אתה לא בטוח, ישנם ספרים רבים על תכנות C# שאתה יכול לקרוא וללמוד. יש מקומות שבהם זה מוסבר די הרבה באתרים אחרים, אז אם אין לך כסף, זה טוב לחפש מקום כזה.

ראשית, בואו נפתח את הקובץ "תוכנית .cs", שהוא גם נקודת המוצא של התוכנית. אגב, ההרחבה של קבצי קוד C# היא ". cs". פתח את סייר הפתרונות מימין למסך הפיתוח (בהתאם למשתמש). במקרים מסוימים, החלון כבר מוצמד ימינה. משם, לחץ פעמיים על "תוכנית .cs".

ソリューション エクスプローラー

אני חושב שעורך המקור פתוח.

ソースエディタ

עדיף שכל אחד מכם ילמד C#, אבל לעת עתה אני רוצה להסביר בקצרה את הקוד בטיפים הבאים.


using System;
using System.Collections.Generic;
using System.Windows.Forms;

שיעורים תמיד אמורים להיות כתובים במרחב שמות איפשהו. לדוגמה, המחלקה "קובץ", העוסקת בקבצים, כלולה במרחב השמות "מערכת" ובמרחב השמות "IO". בדרך כלל, כדי להשתמש במחלקה "קובץ", עליך לכתוב את כל מרחבי השמות ולבסוף את שם המחלקה כ-"System.IO.File".

System.IO.File f;

עם זאת, אם תרשום אותו מראש באמצעות משפט "שימוש", תוכל להשמיט את מרחב השמות בעת השימוש בפועל במחלקה "קובץ".

using System.IO;
File f;

namespace Sample

זה נקרא מרחב שמות. כל מעבדי הביצוע כתובים בו. למרחב השמות יש שם זהה לשם הפרוייקט שיצרת. אם זה לא מוצא חן בעיניך, אתה יכול לשנות אותו מאוחר יותר.


static class Program

שם הכיתה. השם מימין ל"כיתה" הוא שם המחלקה. בעיקרון, קל יותר להבין אם שם הקובץ ושם המחלקה נמצאים יחד. "סטטי" משמאל "כיתה" הוא בדרך כלל לא הכרחי, אבל עבור זה "תוכנית" שיעור, אתה צריך לחשוב על זה כדרך לשים את זה על.


/// <summary>
/// アプリケーションのメイン エントリ ポイントです。
/// </summary>
[STAThread]
static void Main()
{
  Application.EnableVisualStyles();
  Application.SetCompatibleTextRenderingDefault(false);
  Application.Run(new Form1());
}

כאן מתחיל התהליך בפועל. שלוש השורות העליונות הן הערות, אז התעלמו מהן. זה לא קשור לעיבוד בפועל. "[STAThread]" אולי לא באמת נחוץ, אבל אם אתה לא מבין את זה, זה בטוח יותר לשים את זה כפי שהוא. "הריק הסטטי הראשי()" בשורה הבאה הוא ראש השיטה. השאירו את זה כמו שזה, אלא אם כן קורה משהו רע. התוכנית מבוצעת משיטה זו.

「Application.EnableVisualStyles();」 מתאר את הפקדים שברצונך למקם בטופס אם ברצונך שהם יהיו בסגנון XP. הסר שורה זו רק אם ברצונך לגרום לה להיראות כמו פקד ישן. בעיקרון, תשאירו את זה ככה. 「Application.SetCompatibleTextRenderingDefault(false);」 קשור לציור הטקסט של הפקד, אך ניתן בעצם להשאיר אותו כפי שהוא. 「Application.Run(new Form1());」 כדי להפעיל בפועל את היישום. כאן, אנו נבצע את מחלקת הטופס "Form1" כחלון ברמה העליונה. "טופס 1" היא הכיתה של החלון המוצג ב"ביצוע באגים "קודם לכן.


בואו נסתכל על אותה מחלקה "טופס 1". בסייר הפתרונות, לחץ באמצעות לחצן העכבר הימני על הקובץ "Form1.cs" והצג אותו ב"תצוגת קוד ".

Form1 コードの表示

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Sample
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
  }
}

זה בעצם כל הקוד שנכתב במחלקת "טופס 1". רק החלקים השונים משיעור "התוכנית" מוסברים.


public partial class Form1 : Form

קחו בחשבון ש"ציבורי" הוא משהו שאתם תמיד שמים כשאתם יוצרים כיתה (זה יכול להשתנות במקרים מסוימים). השיעורים הם בעצם "ציבוריים", אז אני אמשיך אותם. "חלקי" משמש לפיצול מחלקה לקבצים מרובים. זה נדרש גם עבור כיתות שיוצרות טפסים. "טופס" בסוף הוא מחלקה השייכת למרחב השמות "System.Windows.Forms". בקוד הנ"ל, "באמצעות System.Windows.Forms;" זה כתוב כמו "טופס" בקיצור. אם תוסיף ":Form" אחרי שם המחלקה "Form1", פירוש הדבר הוא "מחלקת Form1 שירשה ממחלקת הטופס". זכור, הכיתה שאתה יוצר את הטופס היא בעצם איך שהוא נראה.


public Form1()
{
  InitializeComponent();
}

זוהי שיטה, אך היא נקראת "בנאי". שם השיטה תמיד זהה לשם המחלקה. הבנאי מבוצע תמיד מיד לאחר יצירת הכיתה. במחלקה "תוכנית" לעיל, "יישום.הפעל (טופס חדש1());" אנו משתמשים באופרטור "חדש" כדי ליצור מחלקה "Form1". לכן, בנאי זה מבוצע תמיד. עכשיו, בתוך הבנאי יש שיטת "אתחולComponent()" שבוצעה. הקוד למחלקה "Form1" הוא היחיד שהזכרתי, אך המחלקה מחולקת למעשה לשני קבצים. בסייר הפתרונות, יש כפתור "+" לצד הקובץ "Form1.cs", אז נסה ללחוץ עליו.

Form1 の別のファイル

הקובץ "Form1.Designer .cs" יצא. למעשה, הגוף של "אתחולComponent" השיטה מתואר בקובץ זה.

מלכתחילה, איזה סוג של עיבוד נעשה על ידי שיטת "InitializeComponent" הוא כי ערכת הנתונים על המסך "מעצב" של המחלקה "Form1" מוחלף עם התוכן המעובד בפועל על ידי התוכנית. לכן, אם תשנה את המאפיינים וכו 'במסך "מעצב", הקוד בקובץ "Form1.Designer .cs" ייכתב מחדש בזמן אמת. במילים אחרות, המחלקה מחולקת לשני קבצים, כך שהמתכנת אינו צריך לערוך את הקוד ישירות. לכן, אינך צריך להסתכל על הקוד המפורט, כך שתוכל לסכם את הקוד של הקובץ שיש לערוך בדרך זו באופן תמציתי מאוד. זהו יתרון ייחודי של C# 2.0, אשר למרבה הצער אינו מציע תכונה זו. זו אחת הסיבות שבגללן אני הולך על C# 2.0. (אגב, C# 1.0 הוא סטנדרטי ב- Visual Studio 2002 ו- 2003, ו- C# 2.0 מבוסס על Visual Studio 2005.)

אם ברצונך לראות את התוכן של "Form1.Designer .cs", באפשרותך ללחוץ פעמיים כדי לראות אותו. אני חושב שזה יעזור באופן מפתיע. במקרים מסוימים, ייתכן שיהיה עליך לערוך זאת, ולכן כדאי להעיף מבט.


כעת, לאחר שסיימנו להסביר את הקוד מיד לאחר יצירת הפרויקט. בואו נשנה קצת את ההגדרות.

שם הטופס (מחלקה) לאחר יצירת הפרוייקט הוא תמיד "טופס 1". אני חושב שיש כנראה יותר מכמה אנשים שלא אוהבים את זה, אז בואו נשנה את השם. מכיוון שזה יהיה החלון הראשי, בואו ננסה את זה כמו "MainForm".

ראשית, מתוך סייר הפתרונות, לחץ באמצעות לחצן העכבר הימני על "Form1.cs" ולחץ על "שנה שם".

名前の変更

מכיוון שניתן לשנות את שמו, הוא ייכתב מחדש כ-"MainForm .cs".

MainForm

מוצגת תיבת דו-שיח כמו זו שלהלן, לכן לחץ על הלחצן "כן". (יכול להיות שזה לא ייצא.) במקרה כזה, אתה צריך לשנות את זה באופן ידני עם refactor, וכו ')

名前変更確認

לאחר מכן, כל מה שקשור "טופס 1" ישתנה "MainForm". גם כל שמות הכיתות ישתנו. זה עד כדי כך פשוט, לא?

全て名前変更