PracticU

פרויקט מעשי ב-#C - ספר טלפונים - חלק 7

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

פרויקט מעשי ב-#C - ספר טלפונים - חלק 7
השיעור מוסיף עץ קבוצות (TreeView) לספר הטלפונים, שבו כל קבוצה (משפחה, חברים, עבודה) מציגה את אנשי הקשר שלה.
השלבים העיקריים
1. עץ הקבוצות: נוסף TreeView עם צומת שורש ושלוש קבוצות: Family, Friends ו-Work.
2. בחירה בצומת: האירוע AfterSelect מופעל כשבוחרים צומת. לפי הטקסט של הצומת נטענת הרשימה המתאימה לתצוגה.
3. שלוש רשימות: לכל קבוצה נוצרה רשימה נפרדת מסוג ArrayList. המחלקה נמצאת ב-System.Collections, ולכן נכתב using בתחילת הקובץ, כדי לא לכתוב את השם המלא.
4. הוספה: בשלב הראשון כל איש קשר שנוסף נכנס לקבוצה Friends.
5. הצגה: כשמשתמש בוחר קבוצה, הרשימה מתנקה ומתווספים אליה כל אנשי הקשר של הקבוצה.
6. קושי: בתחילה לא מוצג דבר כשבוחרים Family, כי הרשימה ריקה ואין דרך לשייך אנשי קשר לקבוצה. השיוך בזמן ההוספה נדרש בשלב הבא של הפיתוח.
השיעור הבא בקורס: פרויקט מעשי ב-#C - ספר טלפונים - חלק 8

פרקי ההרצאה: פרויקט מעשי ב-#C - ספר טלפונים - חלק 7

  1. 00:00

    קבוצות לחברים: משפחה, חברים ועבודה

  2. 01:53

    הוספת עץ TreeView לקבוצות

  3. 03:36

    צמתים של משפחה, חברים ועבודה

  4. 05:41

    תגובה לבחירה בצומת בעץ

  5. 08:09

    שמירת הקבוצות במערכים דינמיים

  6. 09:22

    שימוש ב-ArrayList והשלמת הטיפוס

  7. 10:46

    הסבר על using ומרחב השמות

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

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

  1. 00:06

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

  2. 00:51

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

  3. 01:31

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

  4. 02:30

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

  5. 03:08

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

  6. 04:01

    ופרנד ואת צ'יילד וורק פה הוא לא שינה את זה מה כן השתנה, יש family, friends וwork, זהו אז כמו שיש אמור להיות קונטקסט, עכשיו כשאני נוגע בפמילי אני רוצה לראות את אלה שהם שיוכים לפמילי, כשאני נוגע בפרנדס אני רוצה לראות את פרנדס, אני נוגע בwork, אני רוצה להיות מבוגר להוסיף עוד כאלו, אז איך את זה נעשה,

  7. 05:14

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

  8. 05:33

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

  9. 06:26

    אני נוגע בwork זה כבר יותר מעניין זה אומר שwork חווה by mouse action by mouse ושוב אנחנו מוצאים את עצמנו כאן שוב by mouse שוב by mouse שלוש פעמים הוא חווה את האירוע הזה מוזר כמובן שאם אני נוגע כאן אבל זה אי אפשר לראות שגם עם ה-Keyboard אני יכול לטייל על העץ ולהשיג את האפקט של After Select.

  10. 07:09

    טוב, אז אנחנו יודעים שזו הפונקציה שמטפלת במגע שלנו, ב-Nodes, בצמתים של העץ, אז כתגובה אנחנו רוצים בעצם להציג משהו.

  11. 07:24

    אז נעצור את הריצה, שיפט F5 עוצר לי את הריצה, ופה נגיד לו שאנחנו, זהו, אני רוצה להציג כל מיני קבוצות. אז נגיד לו ש-if e.node שווה ל...

  12. 07:50

    זהו, בואו נתייחס ל-node.txt שווה ל... אם זה friends אז אני רוצה להציג את friends. אז איך אנחנו נציג את ה-friends? זה בעצם מה זה אומר הקבוצות האלה מבחינת איפה אני מאחסן את הקבוצות.

  13. 08:20

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

  14. 09:17

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

  15. 09:48

    אני יכול לבחור באופציה השנייה ואז הוא הופך את ה-ArrayList להירקרק והוא גם הוסיף לי את הקידומת זה בעצם איפה נמצא הטיפוס הזה יש טיפוס שנקרא ArrayList שזה מערך דינמי והדבר הזה הקלאס הזה אם נרחף מעליו אנחנו נראה שהוא כותב שזה קלאס System Collections ArrayList הקלאס הזה הטיפוס הזה נמצא ב-System Collections אז זאת

  16. 10:19

    דרך אחת לגרום לו להכיר את הרייליסט, דרך אחרת זה להגיד לו Using System Collection. אם אני אומר לו Using, אז הוא מוסיף כאן למעלה את ה-Using System Collection.

  17. 10:37

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

  18. 10:54

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

  19. 11:18

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

  20. 11:46

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

  21. 12:06

    אז זה יהיה הרייליסט שנקרא פמילי, ואני מקצה הרייליסט חדש,

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

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

ההרצאה הבאה: פרויקט מעשי ב-#C - ספר טלפונים - חלק 8

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

  • פרויקט מעשי ב-#C - תוכנת צייר - חלק 1
  • תרגיל מעשי Delegate Event
  • יצירת מודל של ספר - דוט נט NET Core.
  • יצירת פרויקט Maven - חלק 1

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

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