מדריך להכנת מנשק גרפי בעזרת Python ו Glade

מטרת המדריך

מטרת מדריך זה להראות דרך קלה ומהירה להכנת מנשק גרפי.

למי מיועד המדריך

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

על איזו מערכת נבנה המדריך

המדריך נבנה על מערכת Ubuntu GNU/Linux אך כל מערכת לינוקס תתאים. הוראות ההתקנה המדוייקות ספציפיות למערכת מבוססת Debian GNU/Linux, אך ינתנו הסברים כלליים גם עבור מערכות אחרות.

באילו כלים נעשה שמוש במדריך זה

  • Glade - , מחולל מנשקים גרפיים עבור סט הכלים של Gnome
  • Python - , שפת תסריט קלה ללמידה.
  • PyGTK - קישר של סט הכלים של Gnome לשפת Python
  • glade2py - תסריט המחולל קוד הרצה בשפת Python המתאים למנשק גרפי שיוצר ע”י תכנת Glade.

דברים שצריך לאסוף לפני תחילת העבודה

  • - מחולל מנשקים גרפיים מסוג Glade, שפת תסריט מסוג Python, קישור בין שפת Pyhton ל Glade.

במערכות Ubuntu הפקודה הבאה תתקין את כל התכנות להן נזדקק במהלך המדריך:

  sudo apt-get install glade-gnome python-glade2

במערכות אחרות צריך להקפיד כי במערכת יהיה מותקן מחולל מנשקים מסוג Glade וקישור לשפת Python, בד”כ שם החבילה יכלול את המילים glade ו python.

  • - תסריט להכנת שלד קוד Python מתוך קובץ Glade: את התסריט אפשר להוריד מאתר התסריט, glade2py, לאחר מיכן יש להתקין את התסריט במחשב בו עובדים. כדי להתקין את התסריט נפתח את הקובץ הארוז ואח”כ נפעיל מתוך הספריה שתפתח את פקודת ההתקנה כמשתמש על:
  tar -xvzf glade2py-X.tar.gz
  
  cd glade2py-X
  su
  python setup.py install

הפקודה תעתיק את התסריט מהספריה המקומית אל ספריית ההרצה ותעניק לתסריט הרשאות ריצה.

  • - מדריך לשימוש בקישור של Gnome ל Python

קישור למדריך ברשת

מהלך העבודה

דוגמה: הכנת עורך טקסט פשוט

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

editor.glade - קובץ ה XML שנוצר ע”י תוכנת glade ומתאר את המנשק הגרפי.

editor.py - קובץ ההרצה הגולמי כפי שנוצר ע”י תסריט glade2py

editor_stage2.py - קובץ ההרצה בשפת Python לאחר עריכה.

הכנת המנשק הגרפי

את הכנת המנשק הגרפי נבצע בעזרת התכנה glade. לאחר פתיחת התכנה נלחץ על הכפתור “חדש”. תופיע חלונית שתשאל לגבי סוג המנשק שאנו רוצים להכין, אנו נבחר במנשק מבוסס GTK+. נבנה מנשק המתאים לצרכינו ע”י שימוש בסרגל הכלים של התכנה. ראשית נבקש חלון ראשוני ולאחר מיכן נאכלס אותו בכפתורים ותיבות טקסט לפי הצורך.

סרט פלש קצר המדגים יצירת מנשק משתמש גרפי בעזרת glade ופייטון

סרט פלש קצר המדגים יצירת מנשק משתמש גרפי בעזרת glade ומונו

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

בסיום העבודה עם glade נשמור את קובץ ה xml שלנו ונסגור את התכנה.

אנו נקבל את הקובץ editor.glade

הכנת שלד הקוד הראשוני

כדי לקבל קוד ריצה בשפת python יש צורך לייצר אותו מיתוך הקובץ שקיבלנו מתכנת glade ע”י התסריט glade2py.

אנו נקבל את הקובץ editor.py

glade2py editor.glade > editor.py

אם התסריט glade2py נמצא בספריה הנוכחית ולא במסלול ההרצה (PATH) צריך להוסיף ./ לפני הפקודה.

glade2py editor.glade > editor.py/.

בדיקת הקוד

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

python editor.py

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

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

לאחר סיום העריכה נקבל את הקובץ editor_stage2.py

gedit editor.py

הרצת הישום המוכן

זהוא, יש לנו עורך טקסט מוכן.

python editor_stage2.py

מדריכים בעברית

איך להמשיך

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

מדריכי תכנות

מדריכי תכנות - אוסף מדריכי התכנות בפנגווין.

מדריכים/הכנת_מנשק_גרפי_בעזרת_python_ו_glade.txt · שונה לאחרונה ב: 2008/06/19 18:34 (עריכה חיצונית)
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0