Приложението To-Do е класически проект за всеки начинаещ програмист. Разберете как да създадете такъв с помощта на Python и Tkinter.

Приложението To-Do, понякога наричано мениджър на задачи, позволява на потребителите да организират и управляват своите задачи по-ефективно. Можете да създадете списък с ежедневни или седмични задачи, да зададете крайни срокове и напомняния, да ги приоритизирате, да проследявате напредъка им и да ги споделяте с други.

Приложението To-Do ви позволява да управлявате времето, да увеличите производителността и да намалите стреса. И така, как можете да създадете такъв в Python?

Модулът Tkinter

Можете да използвате Tkinter за изграждане на приложението To-Do. Tkinter ви позволява да създавате настолни приложения. Той предлага разнообразие от приспособления като бутони, етикети и текстови полета, които улесняват разработването на приложения. Някои приложения, които можете да разработите с помощта на Tkinter, включват a Приложение за речник, Музикален плеър, а Инструмент за преобразуване на теглои а Игра на Word Jumble.

instagram viewer

За да инсталирате Tkinter, отворете терминал и стартирайте:

pip инсталирайте tkinter

Как да създадете приложение за задачи с помощта на Python

Тук можете да намерите изходния код на приложението To-Do GitHub хранилище.

Импортирайте модула Tkinter и инициализирайте основния прозорец. Използвайки конфигурирам () функция, задайте цвета на фона. Също така задайте заглавието и размера на прозореца.

от tkinter импортиране *
от tkinter.font импортиране Шрифт

корен = Tk()
root.configure (background="#A020f0")
root.title(„Приложение за списък със задачи“)
root.geometry("750x500")

Определете стил на шрифт и джаджа за рамка. Рамката действа като контейнер и отговаря за подреждането на позицията на други джаджи. Задайте родителския прозорец, в който искате да го поставите, и му дайте вертикална подложка от 10.

Дефинирайте приспособление за списъчно поле. Този компонент показва списък с елементи, които потребителят може да избере. Задайте родителския прозорец, в който искате да го поставите, стила на шрифта, ширината, височината, цвета на фона, ширината на рамката и цвета на шрифта. Също така задайте дебелината на осветяването на фокуса, цвета на фона, който трябва да има, когато е избран, и външния вид на активната линия като Нито един.

Организирайте списъка, като го поставите от лявата страна и му кажете да запълни всяко допълнително пространство в двете посоки.

my_font = Шрифт (семейство="Arial", размер=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", highlightthickness=0, изберете фон="#ff0000", активен стил="нито един")
my_list.pack (страна=ЛЯВО, запълване=ДВАТА)

Дефинирайте лента за превъртане, която програмата ще показва от дясната страна на рамката, запълвайки всяко допълнително пространство в двете посоки. Използвай config() метод за обвързване на лентата за превъртане към изпълнимия елемент на списъка, който дефинирахте по-рано. При задаване на стойността на yscrollcommand като my_scrollbar.set той получава текущата позиция на лентата за превъртане при взаимодействие с потребителя.

При задаване на командния параметър като my_list.yview, движението на лентата за превъртане се свързва с функциите нагоре и надолу. Така че, когато потребителят взаимодейства с лентата за превъртане, изгледите на списъка се променят съответно.

my_scrollbar = Лента за превъртане (my_frame)
my_scrollbar.pack (страна=ДЯСНО, запълване=ДВАТА)
my_list.config (yscrollcommand=my_scrollbar.set)
my_scrollbar.config (команда=my_list.yview)

Дефинирайте приспособление за въвеждане, за да приемате задачи като вход от потребителя. Задайте родителския прозорец, в който искате да го поставите, стила на шрифта, ширината и цвета на фона. Организирайте го, като добавите подложка от 20 във вертикална посока.

Определете рамка, за да организирате вашите бутони. Поставете ги в основния прозорец и му дайте фонов цвят. Организирайте рамката с подложка от 20 и във вертикална посока.

my_entry = Запис (корен, шрифт=("Arial", 22), ширина=26, bg='#cf9fff')
my_entry.pack (pady=20)

button_frame = Рамка (корен, bg='#a020f0')
button_frame.pack (pady=20)

Дефинирайте функция, delete_item(). Преминете КОТВА параметър към функцията за изтриване, за да премахнете избрания елемент от списъка.

дефизтрий_елемент():
my_list.delete (ANCHOR)

Дефинирайте функция, Добавете артикул(). Използвай получи() функция за извличане на въведената от потребителя стойност в края на списъка. Ако списъкът е празен, добавеният елемент ще стане първият запис в списъка. След като добавите елемента към списъка, трябва да го премахнете от изпълнимия модул за въвеждане. Използвайте функцията за изтриване, за да премахнете вмъкнатия текст от началото до края на неговата дължина.

дефДобавете артикул():
my_list.insert (END, my_entry.get())
my_entry.delete(0, КРАЙ)

Дефинирайте функция, cross_off_item(). Използвай item_config() метод за промяна на цвета на шрифта на избрания елемент задача в списъка на бледо цвят, вие сте задраскали елемента. Изчистете селекцията, която сте направили сега, от началото до края на нейната дължина.

дефзачеркнат_елемент():
my_list.itemconfig (my_list.curselection(), fg="#dedede")
my_list.selection_clear(0, КРАЙ)

Дефинирайте функция, uncross_item(). Подобно на горната функция, променете цвета на избраната задача обратно към оригинала и изчистете селекцията напълно.

дефuncross_item():
my_list.itemconfig (my_list.curselection(), fg="#5c4033")
my_list.selection_clear(0, КРАЙ)

Дефинирайте функция, delete_crossed(). Дефинирайте променлива на брояча и повторете, докато стане по-малко от размера на списъка. Ако цветът на шрифта на елемента е блед, изтрийте този елемент от списъка. В противен случай продължете итерацията, като увеличите променливата на брояча.

дефdelete_crossed():
брои = 0

докато брой < my_list.size():
ако my_list.itemcget (брой, "fg") == "#dedede":
my_list.delete (my_list.index (брой))
друго:
брои += 1

Определете пет бутона: изтриване, добавяне, задраскване, премахване на зачеркнато и изтриване на зачеркнато. Поставете бутоните в рамката на бутоните, която създадохте по-рано. Задайте текста, който всеки бутон трябва да показва, функцията, която трябва да изпълнява, когато щракнете върху него, цвета на фона и стила на шрифта.

delete_button = Бутон (button_frame, text=„Изтриване на елемент“, команда=изтрий_елемент, bg="#e7305b", шрифт=("ариал", 12, "удебелен"))
add_button = Бутон (button_frame, text="Добавете артикул", команда=добавяне на елемент, bg="#e7305b", шрифт=("ариал", 12, "удебелен"))
cross_off_button = Бутон (button_frame, text=„Зачеркнат елемент“, команда=зачеркнат_елемент, bg="#e7305b", шрифт=("ариал", 12, "удебелен"))
uncross_button = Бутон (button_frame, text=„Размахване на елемента“, command=uncross_item, bg="#e7305b", шрифт=("ариал", 12, "удебелен"))
delete_crossed_button = Бутон (button_frame, text=„Изтриване на кръстосано“, 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)

The mainloop() функцията казва на Python да стартира цикъла на събитията на Tkinter и да слуша за събития, докато затворите прозореца.

root.mainloop()

Съберете целия код заедно и никога не пропускайте нито една задача, като използвате това ефективно приложение за списък със задачи.

Извеждане на приложение To-Do с помощта на Python

При стартиране на горната програма се появява прозорец, в който можете да въведете задачите, които искате да изпълните. При добавяне на задачата и натискане на Добавете артикул бутон, задачата се добавя към екрана.

Когато изберете някоя от задачите с мишката/клавиатурата и щракнете върху Зачеркнете елемент избраната задача променя цвета си и става бледа.

При избиране на кръстосания елемент и щракване върху Премахване на елемента бутон, програмата подчертава задачата обратно в оригиналния й цвят.

При щракване върху Изтрий кръстосано бутон, програмата изтрива задрасканата задача. При избор на който и да е елемент и щракване върху Изтриване на елемент избраният елемент се премахва.

Приложения, които можете да създавате с помощта на Python, за да увеличите продуктивността си

Можете да създавате приложения като RescueTime, които проследяват колко време прекарва потребителят в кое приложение. Такива приложения могат да ви помогнат да откриете кои уебсайтове ви разсейват най-много. Освен това можете да се вдъхновите от Trello, за да създадете табла със списъци със задачи, крайни срокове и напомняния.

Музикално приложение, което възпроизвежда специално създаден плейлист, може да помогне на потребителите да се концентрират и съсредоточат върху работата. Можете дори да автоматизирате GUI програми за извършване на повтарящи се задачи като процеси за влизане и скриптове за взаимодействие с работния плот.