Апликација То-До је класичан пројекат за било ког програмера који ће почети. Сазнајте како да га направите користећи Питхон и Ткинтер.

Апликација То-До, која се понекад назива и менаџер задатака, омогућава корисницима да ефикасније организују своје задатке и управљају њима. Можете креирати листу дневних или недељних задатака, поставити рокове и подсетнике, одредити им приоритете, пратити њихов напредак и делити их са другима.

Апликација То-До вам омогућава да управљате временом, повећате продуктивност и смањите стрес. Дакле, како га можете направити у Питхон-у?

Ткинтер модул

Можете користити Ткинтер да направите апликацију То-До. Ткинтер вам омогућава да креирате десктоп апликације. Нуди разне виџете попут дугмади, налепница и оквира за текст који олакшавају развој апликација. Неке апликације које можете развити користећи Ткинтер укључују а Апликација Речник, Музички плејер, а Алат за конверзију тежине, и а Игра мешања речи.

Да бисте инсталирали Ткинтер, отворите терминал и покрените:

пип инсталл ткинтер

Како направити апликацију То-До користећи Питхон

Овде можете пронаћи изворни код апликације То-До ГитХуб спремиште.

Увезите Ткинтер модул и иницијализујте основни прозор. Помоћу цонфигуре() функцију, подесите боју позадине. Такође подесите наслов и величину прозора.

из ткинтер увоз *
из ткинтер.фонт увоз Фонт

корен = Тк()
роот.цонфигуре (бацкгроунд="#А020ф0")
роот.титле(„Апликација за листу обавеза“)
роот.геометри("750к500")

Дефинишите стил фонта и виџет оквира. Оквир делује као контејнер и одговоран је за уређење положаја других виџета. Подесите родитељски прозор у који желите да га поставите и дајте му вертикални паддинг од 10.

Дефинишите виџет оквира са листом. Ова компонента приказује листу ставки које корисник може изабрати. Подесите родитељски прозор у који желите да га поставите, стил фонта, ширину, висину, боју позадине, ширину ивице и боју фонта. Такође, подесите дебљину истицања фокуса, боју позадине коју треба да има када се изабере и изглед активне линије као Ниједан.

Организујте листу тако што ћете је поставити на леву страну и рећи јој да попуни додатни простор у оба смера.

ми_фонт = Фонт (породица="Ариал", сизе=22, тежина="одважан")
ми_фраме = Оквир (роот)
ми_фраме.пацк (пади=10)

ми_лист = Листбок (ми_фраме, фонт=ми_фонт, видтх=40, висина=7, бг="#цф9ффф", бд=0, фг="#5ц4033", хигхлигхттхицкнесс=0, селецтбацкгроунд="#фф0000", ацтивестиле="ниједан")
ми_лист.пацк (сиде=ЛЕФТ, филл=БОТХ)

Дефинишите траку за померање коју ће програм приказати на десној страни оквира, попуњавајући додатни простор у оба смера. Користити цонфиг() метод за повезивање траке за померање са виџетом оквира листе који сте раније дефинисали. Приликом постављања вредности исцроллцомманд као ми_сцроллбар.сет добија тренутну позицију траке за померање при интеракцији корисника.

Приликом подешавања командног параметра као ми_лист.ивиев, кретање траке за померање се повезује са функцијама горе и доле. Дакле, када корисник ступи у интеракцију са траком за померање, прикази оквира са листом се мењају у складу са тим.

ми_сцроллбар = трака за померање (мој_оквир)
ми_сцроллбар.пацк (страна=ДЕСНО, испуни=ОБА)
ми_лист.цонфиг (исцроллцомманд=ми_сцроллбар.сет)
ми_сцроллбар.цонфиг (цомманд=ми_лист.ивиев)

Дефинишите виџет за унос који прихвата задатке као унос од корисника. Подесите родитељски прозор у који желите да га поставите, стил фонта, ширину и боју позадине. Организујте га додавањем допуна од 20 у вертикалном правцу.

Дефинишите оквир да бисте организовали дугмад. Поставите их у основни прозор и дајте му боју позадине. Организујте оквир са подставком од 20 иу вертикалном правцу.

ми_ентри = Унос (роот, фонт=("Ариал", 22), ширина=26, бг='#цф9ффф')
ми_ентри.пацк (пади=20)

буттон_фраме = Оквир (роот, бг='#а020ф0')
буттон_фраме.пацк (пади=20)

Дефинишите функцију, делете_итем(). Пасс тхе АНЦХОР параметар функције брисања да бисте уклонили изабрану ставку са листе.

дефделете_итем():
ми_лист.делете (АНЦХОР)

Дефинишите функцију, Додајте ставку(). Користити добити() функција за преузимање вредности коју је корисник унео на крај листе. Ако је листа празна, додат ће елемент постати први унос на листи. Након што додате елемент на листу, потребно је да га уклоните из виџета за унос. Користите функцију брисања да уклоните текст уметнут од почетка до краја његове дужине.

дефДодајте ставку():
ми_лист.инсерт (ЕНД, ми_ентри.гет())
ми_ентри.делете(0, КРАЈ)

Дефинишите функцију, цросс_офф_итем(). Користити итем_цонфиг() начин да промените боју фонта задатка изабране ставке на листи у бледу боју, прецртали сте ставку. Обришите селекцију коју сте сада направили од почетка до краја њене дужине.

дефцросс_офф_итем():
ми_лист.итемцонфиг (ми_лист.цурселецтион(), фг="#дедеде")
ми_лист.селецтион_цлеар(0, КРАЈ)

Дефинишите функцију, унцросс_итем(). Слично горњој функцији, промените боју изабраног задатка назад на оригиналну и потпуно обришите избор.

дефунцросс_итем():
ми_лист.итемцонфиг (ми_лист.цурселецтион(), фг="#5ц4033")
ми_лист.селецтион_цлеар(0, КРАЈ)

Дефинишите функцију, делете_цроссед(). Дефинишите променљиву бројача и понављајте све док не буде мања од величине листе. Ако је боја фонта ставке бледа, избришите ту ставку са листе. У супротном, наставите итерацију повећањем променљиве бројача.

дефделете_цроссед():
цоунт = 0

док цоунт < ми_лист.сизе():
ако ми_лист.итемцгет (број, "фг") == "#дедеде":
ми_лист.делете (ми_лист.индек (цоунт))
друго:
цоунт += 1

Дефинишите пет дугмади: избриши, додај, прецртај, раскрижи и обриши прецртано. Поставите дугмад у оквир дугмади који сте раније креирали. Подесите текст који свако дугме треба да прикаже, функцију коју треба да покрене када кликнете на њега, његову боју позадине и стил фонта.

делете_буттон = Дугме (буттон_фраме, тект="Избриши ставку", цомманд=делете_итем, бг="#е7305б", фонт=("ариал", 12, "одважан"))
адд_буттон = Дугме (буттон_фраме, тект="Додајте ставку", цомманд=адд_итем, бг="#е7305б", фонт=("ариал", 12, "одважан"))
цросс_офф_буттон = Дугме (буттон_фраме, тект=„Укрштање ставке“, цомманд=цросс_офф_итем, бг="#е7305б", фонт=("ариал", 12, "одважан"))
унцросс_буттон = Дугме (буттон_фраме, тект=„Унакрсна ставка“, цомманд=унцросс_итем, бг="#е7305б", фонт=("ариал", 12, "одважан"))
делете_цроссед_буттон = Дугме (буттон_фраме, тект=„Избриши укрштено“, цомманд=делете_цроссед, бг="#е7305б", фонт=("ариал",12, "одважан"))

Организујте дугмад помоћу менаџера мреже у један ред и пет колона. Подесите паддинг од 0 у хоризонталном правцу да бисте доделили размак између дугмади,

делете_буттон.грид (ред=0, цолумн=0)
адд_буттон.грид (ред=0, цолумн=1, падк=20)
цросс_офф_буттон.грид (ред=0, цолумн=2)
унцросс_буттон.грид (ред=0, цолумн=3, падк=20)
делете_цроссед_буттон.грид (ред=0, цолумн=4)

Тхе маинлооп() функција каже Питхон-у да покрене Ткинтер петљу догађаја и ослушкује догађаје док не затворите прозор.

роот.маинлооп()

Саставите сав код и никада не пропустите ниједан задатак користећи ову ефикасну апликацију за листу обавеза.

Излаз апликације То-До користећи Питхон

Када покренете програм изнад, појављује се прозор у који можете унети задатке које желите да завршите. Приликом додавања задатка и притиска на Додајте ставку дугме, задатак се додаје на екран.

Када изаберете било који задатак помоћу миша/тастатуре и кликнете на Прецртајте ставку дугме, изабрани задатак мења боју и постаје блед.

Када изаберете укрштену ставку и кликнете на Унцросс Итем дугме, програм ће задатак вратити у првобитну боју.

Кликом на Делете Цроссед дугме, програм брише прецртани задатак. Када изаберете било коју ставку и кликнете на Избриши ставку дугме, изабрана ставка се уклања.

Апликације које можете да направите користећи Питхон да бисте повећали своју продуктивност

Можете да направите апликације као што је РесцуеТиме која прати колико времена корисник проведе на којој апликацији. Такве апликације вам могу помоћи да откријете које веб локације вам највише ометају. Осим тога, можете да црпите инспирацију од Трелла за креирање табли са листама обавеза, роковима и подсетницима.

Музичка апликација која репродукује посебно дизајнирану листу песама може помоћи корисницима да се концентришу и фокусирају на посао. Можете чак и да аутоматизујете ГУИ програме за обављање задатака који се понављају као што су процеси пријављивања и скрипте за интеракцију са радном површином.