אפליקציית מטלות היא פרויקט קלאסי לכל מתכנת מתחיל. גלה כיצד לבנות אחד באמצעות Python ו-Tkinter.
יישום מטלות, המכונה לפעמים מנהל משימות, מאפשר למשתמשים לארגן ולנהל את המשימות שלהם בצורה יעילה יותר. אתה יכול ליצור רשימה של משימות יומיות או שבועיות, לקבוע מועדים ותזכורות, לתעדף אותן, לעקוב אחר ההתקדמות שלהן ולשתף אותן עם אחרים.
אפליקציית מטלות מאפשרת לך לנהל זמן, להגביר את הפרודוקטיביות ולהפחית מתח. אז איך אתה יכול לבנות אחד ב- Python?
מודול Tkinter
אתה יכול להשתמש ב-Tkinter כדי לבנות את אפליקציית המטלות. Tkinter מאפשר לך ליצור יישומי שולחן עבודה. הוא מציע מגוון של ווידג'טים כמו לחצנים, תוויות ותיבות טקסט שמקלים על פיתוח אפליקציות. כמה יישומים שאתה יכול לפתח באמצעות Tkinter כוללים א אפליקציית מילון, נגן מוזיקה, א כלי המרת משקל, וכן א משחק מילים ערבוביה.
כדי להתקין את Tkinter, פתח מסוף והפעל:
pip להתקין tkinter
כיצד לבנות אפליקציית מטלות באמצעות Python
אתה יכול למצוא את קוד המקור של אפליקציית המטלות כאן מאגר GitHub.
ייבא את מודול Tkinter ואתחול חלון השורש. משתמש ב configure() פונקציה, הגדר את צבע הרקע. הגדר גם את הכותרת ואת גודל החלון.
מ tkinter יְבוּא *
מ tkinter.font יְבוּא גוֹפָן
root = Tk()
root.configure (background="#A020f0")
root.title('יישום רשימת מטלות')
root.geometry("750x500")
הגדר סגנון גופן ווידג'ט של מסגרת. מסגרת פועלת כמיכל ואחראית על סידור המיקום של ווידג'טים אחרים. הגדר את חלון האב שאתה רוצה למקם אותו ותן לו ריפוד אנכי של 10.
הגדר ווידג'ט של תיבת רשימה. רכיב זה מציג רשימה של פריטים לבחירת המשתמש. הגדר את חלון האב שבו תרצה למקם אותו, סגנון הגופן, הרוחב, הגובה, צבע הרקע, רוחב הגבול וצבע הגופן. כמו כן, הגדר את עובי הדגשת המיקוד, את צבע הרקע שהוא צריך לקבל כאשר הוא נבחר, ואת המראה של הקו הפעיל כ אף אחד.
ארגן את הרשימה על ידי הצבתה בצד שמאל והוראת לה למלא כל מקום נוסף בשני הכיוונים.
my_font = גופן (משפחה="אריאל", גודל=22, משקל="נוֹעָז")
my_frame = מסגרת (שורש)
my_frame.pack (pady=10)
my_list = Listbox (my_frame, font=my_font, width=40, גובה=7, bg="#cf9fff", bd=0, fg="#5c4033", עובי הדגשה=0, selectbackground="#ff0000", activestyle="אף אחד")
my_list.pack (צד=LEFT, fill=BOTH)
הגדר סרגל גלילה שהתוכנית תציג בצד ימין של המסגרת, וימלא כל שטח נוסף בשני הכיוונים. להשתמש ב config() שיטה לאגד את סרגל הגלילה ל-widget של תיבת הרשימה שהגדרת קודם לכן. על הגדרת הערך של yscrollcommand כפי ש my_scrollbar.set הוא מקבל את המיקום הנוכחי של פס הגלילה באינטראקציה של המשתמש.
על הגדרת פרמטר הפקודה כ my_list.yview, התנועה של פס הגלילה מקושרת לפונקציות למעלה ולמטה. לכן, כאשר המשתמש מקיים אינטראקציה עם סרגל הגלילה, תצוגות הרשימה משתנות בהתאם.
my_scrollbar = סרגל גלילה (my_frame)
my_scrollbar.pack (צד=ימין, fill=BOTH)
my_list.config (yscrollcommand=my_scrollbar.set)
my_scrollbar.config (command=my_list.yview)
הגדר ווידג'ט כניסה כדי לקבל משימות כקלט מהמשתמש. הגדר את חלון האב שאתה רוצה למקם אותו, את סגנון הגופן, את הרוחב ואת צבע הרקע. ארגן אותו על ידי הוספת ריפוד של 20 בכיוון האנכי.
הגדר מסגרת לארגון הכפתורים שלך. הנח אותם בחלון השורש ותן לו צבע רקע. ארגן את המסגרת עם ריפוד של 20 גם בכיוון האנכי.
my_entry = Entry (root, font=("אריאל", 22), רוחב=26, bg='#cf9fff')
my_entry.pack (pady=20)
button_frame = מסגרת (שורש, bg='#a020f0')
button_frame.pack (pady=20)
הגדר פונקציה, למחוק פריט(). תעביר את ה לְעַגֵן פרמטר לפונקציית המחיקה כדי להסיר את הפריט שנבחר מהרשימה.
defלמחוק פריט():
my_list.delete (ANCHOR)
הגדר פונקציה, הוסף פריט(). להשתמש ב לקבל() פונקציה כדי לאחזר את קלט הערך על ידי המשתמש לסוף הרשימה. אם הרשימה ריקה, הרכיב שנוסף יהפוך לערך הראשון ברשימה. לאחר הוספת האלמנט לרשימה, עליך להסיר אותו מווידג'ט הערך. השתמש בפונקציית המחיקה כדי להסיר את הטקסט שהוכנס מתחילתו ועד סופו של אורכו.
defהוסף פריט():
my_list.insert (END, my_entry.get())
my_entry.delete(0, END)
הגדר פונקציה, cross_off_item(). להשתמש ב item_config() שיטה כדי לשנות את צבע הגופן של משימת הפריט שנבחר ברשימה לצבע חלש, חצית את הפריט. נקה את הבחירה שעשית כעת מההתחלה ועד הסוף של אורכו.
defלחצות_פריט():
my_list.itemconfig (my_list.curselection(), fg="#dedede")
my_list.selection_clear(0, END)
הגדר פונקציה, uncross_item(). בדומה לפונקציה שלמעלה, שנה את הצבע של המשימה שנבחרה בחזרה למקור ונקה את הבחירה לחלוטין.
defuncross_item():
my_list.itemconfig (my_list.curselection(), fg="#5c4033")
my_list.selection_clear(0, END)
הגדר פונקציה, delete_crossed(). הגדירו משתנה מונה וחזרו עד שהוא קטן מגודל הרשימה. אם צבע הגופן של הפריט חלש, מחק את הפריט מהרשימה. אחרת, המשך באיטרציה על ידי הגדלת משתנה המונה.
defמחק_חצה():
לספור = 0
בזמן count < my_list.size():
אם my_list.itemcget (count, "fg") == "#dedede":
my_list.delete (my_list.index (ספירה))
אַחֵר:
לספור += 1
הגדירו חמישה לחצנים: מחק, הוסף, הסרה, ביטול הצלה ומחק מוחת. מקם את הכפתורים במסגרת הכפתורים שיצרת קודם לכן. הגדר את הטקסט שכל כפתור צריך להציג, את הפונקציה שהוא אמור להפעיל כאשר אתה לוחץ עליו, את צבע הרקע שלו וסגנון הגופן.
delete_button = כפתור (button_frame, text="למחוק פריט", command=delete_item, bg="#e7305b", גופן=("אריאל", 12, "נוֹעָז"))
add_button = כפתור (button_frame, text="הוסף פריט", command=add_item, bg="#e7305b", גופן=("אריאל", 12, "נוֹעָז"))
cross_off_button = לחצן (מסגרת לחצן, טקסט="חיתוך פריט", command=cross_off_item, bg="#e7305b", גופן=("אריאל", 12, "נוֹעָז"))
uncross_button = Button (button_frame, text="פריט ביטול חוצה", command=uncross_item, bg="#e7305b", גופן=("אריאל", 12, "נוֹעָז"))
delete_crossed_button = לחצן (מסגרת לחצן, טקסט="מחק מוצלב", command=delete_crossed, bg="#e7305b", גופן=("אריאל",12, "נוֹעָז"))
ארגן את הכפתורים באמצעות מנהל הרשת בשורה אחת וחמש עמודות. הגדר ריפוד של 0 בכיוון האופקי כדי להקצות קצת מרווח בין הכפתורים,
delete_button.grid (שורה=0, עמודה=0)
add_button.grid (שורה=0, עמודה=1, padx=20)
cross_off_button.grid (שורה=0, עמודה=2)
uncross_button.grid (שורה=0, עמודה=3, padx=20)
delete_crossed_button.grid (שורה=0, עמודה=4)
ה mainloop() הפונקציה אומרת לפייתון להפעיל את לולאת האירועים של Tkinter ולהקשיב לאירועים עד שתסגור את החלון.
root.mainloop()
חבר את כל הקוד ולעולם אל תפספס אף משימה באמצעות יישום רשימת מטלות יעיל זה.
פלט של יישום מטלות באמצעות Python
בהפעלת התוכנית לעיל, מופיע חלון שבו תוכל להזין את המשימות שברצונך להשלים. בהוספת המשימה ולחיצה על הוסף פריט כפתור, המשימה מתווספת למסך.
בבחירת כל אחת מהמשימות עם העכבר/מקלדת ולחיצה על מוצלב פריט כפתור, המשימה שנבחרה משנה את צבעה ומתעלפת.
בבחירת הפריט המוצלב ולחיצה על בטל את הפריט כפתור, התוכנית מדגישה את המשימה בחזרה לצבעה המקורי.
בלחיצה על מחק מוצלב כפתור, התוכנית מוחקת את המשימה המוצלבת. בבחירת פריט כלשהו ולחיצה על למחוק פריט לחצן, הפריט שנבחר יוסר.
יישומים שאתה יכול לבנות באמצעות Python כדי להגביר את הפרודוקטיביות שלך
אתה יכול לבנות אפליקציות כמו RescueTime שעוקבת אחר כמה זמן משתמש מבלה באיזו אפליקציה. אפליקציות כאלה יכולות לעזור לך לגלות אילו אתרים גורמים לך להסחת הדעת ביותר. מלבד זאת, אתה יכול לקחת השראה מ-Trello ליצירת לוחות עם רשימות מטלות, מועדים ותזכורות.
אפליקציית מוזיקה שמשמיעה רשימת השמעה שתוכננה במיוחד יכולה לעזור למשתמשים להתרכז ולהתמקד בעבודה. אתה יכול אפילו להפוך תוכניות GUI לאוטומטיות כדי לבצע משימות חוזרות כמו תהליכי התחברות וסקריפטים לאינטראקציה עם שולחן העבודה.