Започните креирање десктоп апликација у Питхону помоћу Ткинтер ГУИ библиотеке

Започните креирање десктоп апликација у Питхону помоћу Ткинтер ГУИ библиотеке

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





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





како отворити псд датотеке без пхотосхопа

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

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





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

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



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

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

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





from tkinter import Tk
Tk().mainloop()

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

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





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

from tkinter import *
t = Tk()
t.mainloop()

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

t = Tk()
t.geometry('600x600')
t.title('Tk Tutorial')
t.mainloop()

Ткинтер Лабел Видгет

Ткинтер вам омогућава да пишете обичне текстове директно у графички интерфејс помоћу Етикета виџет:

t = Tk()
Label(t, text = 'MUO Tkinter tutorial').grid()
t.mainloop()

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

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

t = Tk()
Label(t, text = 'MUO Tkinter tutorial', font=(60)).grid()
t.mainloop()

Рад са виџетима дугмади у Ткинтеру

Дугмад су неки од најчешће коришћених виџета у ткинтер . Можете додати ове дугмад на које можете кликнути у свој графички интерфејс користећи различите уграђене видгете са дугмадима.

Ево како да додате примарно дугме свом графичком интерфејсу помоћу Дугме виџет:

t = Tk()
Button(t, text = 'Clickable', bg = 'black', fg = 'white').grid()
t.mainloop()

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

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

t = Tk()
Button(t, text = 'Clickable', bg = 'black', fg = 'white', , ).grid()
t.mainloop()

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

да ли је безбедно наручити са алиекпресс -а

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

t = Tk()
Button(t, text='Clickable', bg='blue', fg='white',
height=2, width=10, relief=RAISED, borderwidth=6).grid()
t.mainloop()

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

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

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

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

t = Tk()
Button(t, text=1, bg='black', fg='white').grid(row=1, column=1)
Button(t, text=2, bg='black', fg='white').grid(row=2, column=1)
Button(t, text=3, bg='black', fg='white').grid(row=3, column=1)
Button(t, text=4, bg='black', fg='white').grid(row=4, column=1)
t.mainloop()

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

Код испод, на пример, множи вредност сваког дугмета са 6 када га притиснете. Заснован је на унапред дефинисаној функцији:

def buttonpress(r):
r = 6*r
Label(t, text=r, font=(60)).grid(row=5, column=2)
t = Tk()
Button(t, text = 1, bg = 'black', fg = 'white', width = 10, height = 2,
command = lambda:buttonpress(1)).grid(row=1, column = 1, pady = 6)
Button(t, text = 2, bg = 'black', fg = 'white', width = 10,
command = lambda:buttonpress(2)).grid(row = 2, column = 1, pady = 6)
Button(t, text = 3, bg = 'black', fg = 'white', width = 10,
command = lambda:buttonpress(3)).grid(row = 3, column = 1, pady = 6)
Button(t, text = 4, bg = 'black', fg = 'white', width = 10,
command = lambda:buttonpress(4)).grid(row = 4, column = 1, pady = 6)
t.mainloop()

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

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

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

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

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

def buttonpress(r):
r = 6*r
Label(t, text = r, font = (60)).grid(row = 5, column = 2)
t = Tk()
a = [1, 4, 6, 7]
for i in a:
j = lambda y = i:buttonpress(y)
Button(t, text = i, bg = 'black', fg = 'white', width = 10, height = 2,
command=j).grid(row = i, column = 1, pady = 6)
t.mainloop()

Хајде да даље истражимо моћ за петља за додавање тастера менија вашем графичком интерфејсу:

from tkinter import *
t = Tk()
buttons = ['Files', 'Dashboard', 'Menu', 'Settings', 'Help']
m = 0
for i in range(len(buttons)):
# Get each text in the buttons array using a list index as m increases.
# Then let the column increase by 1 through the length of the array:

Menubutton(t, text=buttons[m], bg='blue', fg='white').grid(row=5, column=i)
m += 1
t.mainloop()

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

t = Tk()
Checkbutton(t, text = 'Select option').grid()
t.mainloop()

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

Како направити падајући мени помоћу Ткинтер -овог виџета менија

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

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

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

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

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

from tkinter import *
t = Tk()
fileOptions = ['New', 'open', 'Save', 'Save as']
fileOptionsAfterseparator = ['Import', 'Export', 'Exit']
viewOptions = ['Transform', 'Edit', 'Create']
menuBar = Menu(t)
file = Menu(menuBar, tearoff=0)
for i in fileOptions:
file.add_command(label=i, command=None)
file.add_separator()
for i in fileOptionsAfterseparator:
file.add_command(label=i, command=None)
menuBar.add_cascade(label='File', menu=file)
View = Menu(menuBar, tearoff=0)
for i in viewOptions:
View.add_command(label=i, command=None)
menuBar.add_cascade(label='View', menu=View)
t.config(menu=menuBar)
t.mainloop()

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

Мени са опцијама Ткинтер -а

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

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

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

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

t = Tk()
Omenu = StringVar() #set the variable type of the options
Omenu.set('MUO') #specify a default value for the menu icon
OptionMenu(t, Omenu, 'MUO', 'Amazon', 'Tutorial').grid()
t.mainloop()

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

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

шта се дешава са подацима на ССД уређају када нестане напајања?

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

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

Да ли користите графички интерфејс? Велике су шансе да их користите сваки дан.

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

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

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

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

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

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