PracticU

פרויקט מעשי ב-#C - תוכנת צייר - חלק 11

בלי כתוביותעם כתוביות
PracticU › פרויקט מעשי ב-#C - תוכנת צייר › פרויקט מעשי ב-#C - תוכנת צייר - חלק 11
מילון מושגים:
ArrayList - מבנה נתונים של רשימה דינמית שגודלה משתנה, הנפוץ בשפות כמו Java ו-C#.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.

פרויקט מעשי ב-#C - תוכנת צייר - חלק 11
בשיעור הזה מפרידים בין הקווים. במקום רשימה אחת של נקודות, כל קו מקבל רשימה משלו, והציור מכיל רשימה של קווים.
השלבים העיקריים
1. קו חדש בכל לחיצה: ב-MouseDown יוצרים רשימה חדשה לקו ומוסיפים אותה לרשימה הכללית lines. כך כל לחיצה מתחילה קו נפרד.
2. הוספה לקו הנוכחי: ב-MouseMove לא מחפשים את הקו בשם, אלא לוקחים את האיבר האחרון ברשימה lines[lines.Count - 1]. יש להמיר אותו לטיפוס ArrayList, כי הרשימה הכללית מחזיקה אובייקטים.
3. ציור של כל הקווים: ב-Paint עוברים על כל קו ברשימה בעזרת foreach ומציירים כל קו בנפרד.
4. בדיקה: מקטינים את החלון ומגדילים אותו. הקווים נשארים נפרדים ולא מתחברים.
שימו לב
- אם לוחצים לפני שנוצר קו, אין איבר אחרון ברשימה. כדאי לבדוק קודם שהרשימה לא ריקה.
- הכנה לשלב הבא: הוספת שקפים (Slides) עם כפתורים להוספה, מעבר לשקף הבא והקודם, ומספר השקף הנוכחי. התלמיד מתבקש לנסות את זה לבד.
בסיום השיעור התלמיד יודע לנהל כמה קווים נפרדים, כל אחד כרשימת נקודות, ולצייר את כולם מחדש.
השיעור הבא בקורס: פרויקט מעשי ב-#C - תוכנת צייר - חלק 12

פרקי ההרצאה: פרויקט מעשי ב-#C - תוכנת צייר - חלק 11

  1. 00:00

    בעיה: כל הקווים הופכים לקו אחד

  2. 00:47

    רשימה של רשימות: קו בתוך ציור

  3. 01:36

    יצירת קו חדש במאוס דאון

  4. 02:24

    הוספת הקו החדש לרשימת הקווים

  5. 03:27

    איבר אחרון במערך הקווים

  6. 04:11

    המרת האיבר האחרון לטיפוס הקו

  7. 05:00

    ציור כל הקווים בנפרד

תמלול ההרצאה: פרויקט מעשי ב-#C - תוכנת צייר - חלק 11

הטקסט המלא של הדקות הראשונות בהרצאה «פרויקט מעשי ב-#C - תוכנת צייר - חלק 11» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:07

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

  2. 00:28

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

  3. 01:33

    אז ככה, במאוס דאון אנחנו רוצים ליצור קו חדש. אז במאוס דאון אנחנו ניצור קו חדש. אנחנו נגדיר פה רייליס ליין שווה לניו רייליס.

  4. 01:58

    זה קו חדש. ובתוך הקו הזה אנחנו באמת נוסיף את הנקודה. אבל זה יהיה ליינס. לליינד אנחנו נוסיף את ליין. את הקו החדש אנחנו נוסיף לקווים.

  5. 02:24

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

  6. 02:52

    מי הוא הליין הזה? מאיפה נשיג את הליין הזה? הליין הזה, כאן יש לנו אותו כמשתנה מקומי, אבל כאן הוא לא מוכר. ליינס מוכר, אבל ליין לא מוכר. איך נשיג את הליין הזה?

  7. 03:13

    אז אם נחשוב, נבין שבעצם ליינס זה מערך, ובמאוס דאן הוספנו לליינס את ליין. האיבר האחרון במערך lines הוא ה-line הנוכחי שבמעוז דאן הוספנו.

  8. 03:35

    אז אם ניגש ל-lines במקום האחרון, מהו המקום האחרון? המקום האחרון זה lines, counts זה הגודל, פחות אחד זה המקום האחרון. ב-lines, פחות אחד של lines יושב לו הline שלנו הline שלנו הוא מסוג הריילי ומכיוון שlines זה הריילי והריילי זה הריילי של אובייקטים אז אנחנו חייבים

  9. 04:22

    פה הסבה להריילי זה לא lines זה line אז אנחנו מגדירים את הרייליס ליין הוא הרייליס שאני מחלט מתוך ליינס באיבר האחרון. קאונט של ליינס פחות אחד.

  10. 04:52

    מכאן הכל אותו דבר. אני ניגש לליין ומוסיף לו את הנקודה. יפה. מה אני עושה בפיין? בפיין המעבר על ליין נשאר אותו דבר.

  11. 05:11

    אבל אין לי דבר כזה ליין.

לקורס המלא: פרויקט מעשי ב‑#C אונליין

ההרצאה הקודמת: פרויקט מעשי ב-#C - תוכנת צייר - חלק 10

ההרצאה הבאה: פרויקט מעשי ב-#C - תוכנת צייר - חלק 12

הרצאות קשורות מקורסים אחרים

  • תרגיל 24 - תוכנת צ'אט - חלק 1
  • פרויקט מעשי ב-#C - ספר טלפונים - חלק 1
  • תרגיל מעשי Delegate Event
  • שדרוג צייר שלנו על canvas

קורסים נוספים במסלול

  • קורס WinForms - תוכנות רגילות בווינדוס
  • פרויקט מעשי ב-#C - בונים מחשבון פשוט
  • פרויקט מעשי ב-#C - ספר טלפונים
  • קורס ADO.NET - חיבור אתר למסד נתונים
  • קורס תכנות מתקדם - #Advanced .NET C
  • קורס WCF - תקשורת למתקדמים בדוט-נט