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

Овде ћемо погледати основе Ткинтер ГУИ модула.

Ткинтер Сетуп

Обично не треба да инсталирате ткинтер посебно ако сте инсталирали новију верзију Питхона, почевши од Питхон 3. Библиотека можда неће радити са старим верзијама Питхона. Ово је чест проблем за кориснике Мац-а и Линук-а, јер ови оперативни системи обично подразумевано имају старије верзије Питхона.

Генерално, за употребу ткинтер модул, обавезно преузмите и инсталирајте најновију компатибилну верзију Питхона на свој рачунар са званичног питхон.орг веб сајт.

Ако користите Мац, можете да преузмете најновију верзију АцтивеТцл, а ткинтер састављач из АцтивеСтате.

Како се користи Ткинтер

Ткинтер зависи од уграђеног ТК класа. И заокружује све догађаје у ГУИ у маинлооп. Према томе маинлооп омотач чини ваш ткинтер извршни код.

За почетак ткинтер:

од ткинтер импорт Тк
Тк (). Маинлооп ()

Покретање горњег кода заврти празно ткинтер Рам.

Карактеристике прилагођавања Ткинтера, међутим, налазе се у његовим уграђеним виџетима.

Да бисте користили ове виџете, можете да их увезете из ткинтер заменом од ткинтер импорт Тк са:

из ткинтер увоза *
т = Тк ()
т.маинлооп ()

Величину прозора такође можете прилагодити помоћу геометрија функцију, а затим наведите наслов помоћу наслов додатак за ткинтер:

т = Тк ()
т.геометрија („600к600“)
т.титле ("Тк Туториал")
т.маинлооп ()

Ткинтер вам омогућава да напишете обичне текстове директно у ГУИ користећи Ознака додатак:

т = Тк ()
Ознака (т, тект = "МУО Ткинтер туториал"). Грид ()
т.маинлооп ()

Тхе грид () метода је, међутим, алтернатива паковање() метода. Лепи ваше виџете на ГУИ, чинећи их видљивим.

Такође можете да одредите фонт за свој Ознака текст:

т = Тк ()
Ознака (т, тект = "МУО Ткинтер туториал", фонт = (60)). Грид ()
т.маинлооп ()

Дугмад су неке од најчешће коришћених виџета у ткинтер. А ове дугмиће на које можете кликнути можете додати у свој ГУИ помоћу различитих уграђених виџета за дугмад.

Ево како да додате главно дугме у свој ГУИ помоћу Дугме додатак:

т = Тк ()
Дугме (т, тект = "Кликниво", бг = "црно", фг = "бело"). Грид ()
т.маинлооп ()

Тхе бг и фг кључне речи описују боју позадине дугмета и боју текста у њему.

Такође можете прилагодити димензију дугмета укључивањем знака висина и ширина параметри:

т = Тк ()
Дугме (т, тект = "Кликниво", бг = "црно", фг = "бело", висина = "2", ширина = "10"). Грид ()
т.маинлооп ()

Ево резултата за то:

А ако желите да дугме учините визуелно привлачнијим, можете да додате и олакшање а затим прилагодите њену ширину ивице:

т = Тк ()
Дугме (т, тект = "Кликниво", бг = "плаво", фг = "бело",
висина = 2, ширина = 10, рељеф = ПОДИЗАН, ширина обруба = 6) .грид ()
т.маинлооп ()

А то изгледа овако:

Заменити ОДГОЈЕН са РАВАН да видимо како то пролази.

Можете додати онолико дугмади колико желите. Али припазите да избегнете преклапање садржаја.

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

т = Тк ()
Дугме (т, текст = 1, бг = "црно", фг = "бело"). Мрежа (ред = 1, колона = 1)
Дугме (т, текст = 2, бг = "црно", фг = "бело"). Мрежа (ред = 2, колона = 1)
Дугме (т, текст = 3, бг = "црно", фг = "бело"). Мрежа (ред = 3, колона = 1)
Дугме (т, текст = 4, бг = "црно", фг = "бело"). Мрежа (ред = 4, колона = 1)
т.маинлооп ()

Необавезна команда кључна реч, међутим, додаје догађаје у Дугме виџет. У основи, усидри опционалну функцију која обрађује одређене догађаје када кликнете на дугме.

На пример, доњи код множи вредност сваког дугмета са 6 када кликнете на њега. И заснива се на унапред дефинисаној функцији:

деф тастер (р):
р = 6 * р
Ознака (т, тект = р, фонт = (60)). Мрежа (ред = 5, колона = 2)
т = Тк ()
Дугме (т, текст = 1, бг = "црно", фг = "бело", ширина = 10, висина = 2,
цомманд = ламбда: буттонпресс (1)). грид (ров = 1, цолумн = 1, пади = 6)
Дугме (т, текст = 2, бг = "црно", фг = "бело", ширина = 10,
цомманд = ламбда: буттонпресс (2)). грид (ров = 2, цолумн = 1, пади = 6)
Дугме (т, текст = 3, бг = "црно", фг = "бело", ширина = 10,
цомманд = ламбда: буттонпресс (3)). грид (ров = 3, цолумн = 1, пади = 6)
Дугме (т, текст = 4, бг = "црно", фг = "бело", ширина = 10,
цомманд = ламбда: буттонпресс (4)). грид (ров = 4, цолумн = 1, пади = 6)
т.маинлооп ()

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

А ако сте забринути због пади кључна реч, она јасно раздваја свако дугме у реду. Замењујући ово са падк раздваја дугмад у колони. Можете истовремено користити обе кључне речи за раздвајање тастера по обе осе како желите.

С тим у вези, не желите да изнова откривате точак за свако дугме као што сте то радили у претходном коду. Ово успорава време извршавања, плус отежава читање и сужавање кода.

Али можеш користите фор петљу да би се избегло ово понављање.

Дакле, ево краће и боље верзије горњег кода:

деф тастер (р):
р = 6 * р
Ознака (т, тект = р, фонт = (60)). Мрежа (ред = 5, колона = 2)
т = Тк ()
а = [1, 4, 6, 7]
јер сам у:
ј = ламбда и = и: притискање дугмета (и)
Дугме (т, текст = и, бг = "црно", фг = "бело", ширина = 10, висина = 2,
наредба = ј) .решка (ред = и, колона = 1, пади = 6)
т.маинлооп ()

Дугмад менија и дугмад за потврду

Даље истражимо моћ за петља за додавање дугмади менија у ваш ГУИ:

из ткинтер увоза *
т = Тк ()
дугмад = ["Датотеке", "Контролна табла", "Мени", "Подешавања", "Помоћ"]
м = 0
за опсег и у опсегу (лен (дугмад)):
# Узмите сваки текст у пољу дугмади помоћу индекса листе како се м повећава.
# Затим нека се колона повећа за 1 кроз дужину низа:

Менубуттон (т, тект = дугмад [м], бг = "блуе", фг = "вхите"). Мрежа (ред = 5, колона = и)
м + = 1
т.маинлооп ()

Додавање дугмади за потврду у ваш ГУИ је такође прилично једноставно:

т = Тк ()
Дугме за потврду (т, тект = "Изаберите опцију"). Грид ()
т.маинлооп ()

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

Тхе Мени виџет вам омогућава да дизајнирате падајуће меније на које можете кликнути ткинтер.

Као што је раније речено, ткинтер нуди многе опције виџета. А неке од њих ћете користити приликом дизајнирања падајућег менија.

Ево неколико уобичајених опција виџета на које ћете наићи док правите падајући мени:

  • адд_цасцаде: Приказује налепницу менија и лепи је тамо где јој је место.
  • адд_сепаратор: Разграничава подменије и групише их у горњи и доњи подменији.
  • адд_цомманд: Овде дајете име свом подменију. На крају, прихвата аргумент наредбе где можете одредити руковатељ догађајима.

Ево примера падајућег менија који користи ове три опције:

из ткинтер увоза *
т = Тк ()
филеОптионс = ["Ново", "отворено", "Сачувај", "Сачувај као"]
филеОптионсАфтерсепаратор = ["Увоз", "Извоз", "Излаз"]
виевОптионс = ["Трансформ", "Едит", "Цреате"]
менуБар = Мени (т)
датотека = Мени (менуБар, теарофф = 0)
фор и ин филеОптионс:
филе.адд_цомманд (лабел = и, цомманд = Ноне)
филе.адд_сепаратор ()
за и у датотециОптионсАфтерсепаратор:
филе.адд_цомманд (лабел = и, цомманд = Ноне)
менуБар.адд_цасцаде (лабел = "Филе", мену = филе)
Поглед = Мени (менуБар, теарофф = 0)
за и ин виевОптионс:
Виев.адд_цомманд (лабел = и, цомманд = Ноне)
менуБар.адд_цасцаде (лабел = "Виев", мену = Виев)
т.цонфиг (мену = менуБар)
т.маинлооп ()

Погледајте како то изгледа:

Мени Ткинтер Оптионс

Ан Оптионмену, за разлику од Мени падајући, пребацује своју ознаку на изабрану опцију.

Иако можете одредити подразумевану вредност налепнице за мени опција, она подразумевано нема ознаку.

Повезан: Идеје за пројекат Питхон погодне за почетнике

Ево како да креирате мени са опцијама у ткинтер:

т = Тк ()
Омену = СтрингВар () #сет променљиви тип опција
Омену.сет ("МУО") #наведите подразумевану вредност за икону менија
ОптионМену (т, Омену, "МУО", "Амазон", "Туториал"). Грид ()
т.маинлооп ()

Направите десктоп апликацију за вишекратну употребу помоћу Ткинтера

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

То може рећи да можете да направите ГУИ калкулатор за радну површину, направите мини уређивач текста или чак направите ГУИ апликацију за рачунаре за управљање залихама. Ако желите да раширите крила и постанете главни ГУИ за радну површину, можете чак да погледате и друге ГУИ модуле Питхона.

Емаил
ГУИ? Шта је графички кориснички интерфејс?

Да ли користите ГУИ? Шансе су да их имате јер их користите сваки дан.

Прочитајте следеће

Повезане теме
  • Програмирање
  • Питхон
О аутору
Идову Омисола (Објављено 88 чланака)

Идову је заљубљен у све паметне технологије и продуктивност. У слободно време игра се са кодирањем и пребацује се на шаховску таблу кад му је досадно, али такође воли да се повремено отргне од рутине. Његова страст да људима покаже пут око модерне технологије мотивише га да пише више.

Још од Идову Омисола

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, прегледе, бесплатне е-књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили