Апликације за више платформи са Питхон, ПиКТ и КТ Десгинер 5

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

ПиКт5 је Библиотека алата Питхон за њега КТ5 фрамеворк. Доступан је за Питхон 3.к.
ПиКт5 је имплементиран као скуп Питхон модула. Омогућава нам да повежемо дизајне које правимо са КТ Десигнер -ом, а затим да их преведемо са Пи Кт -ом тако да се могу извршити под Питхон -ом у свим оперативним системима као што су Линук Виндовс и Мац ОС.
Да бисмо развијали апликације, морамо инсталирати потребне програме и зависности.Овај водич ће користити верзију Линук Минт -а као оперативног система, али се може прилагодити било којем оперативном систему.
У другим водичима користимо Кт за програмирање у Ц ++, мултиплатформско програмирање на Ц ++ и Кт у ГНУ / Линук окружењу и КТ програмирање и СКЛите базе података.
Хајде прво да инсталирамо КТ Десигнер 5, из прозора терминала га преузимамо и инсталирамо
 $ вгет хттп://довнлоад.кт-пројецт.орг/оффициал_релеасес/кт/5.3/5.3.0/кт-Абрирсоурце-линук-к64-5.3.0.рун $ цхмод + к кт-Абрирсоурце-линук-к64-5.3 .0.рун $ судо ./кт-Абрирсоурце-линук-к64-5.3.0.рун
Затим морамо инсталирати развојне библиотеке Питхон:
 судо апт-гет инсталл пикт5-дев-тоолс
Затим морамо инсталирати Питхон екстензију звану СИП која је генератор кода који је посебно дизајниран за креирање Питхон кода. Ово ће омогућити читање дизајнерске датотеке Кт Десигнер -а и превођење у Питхон код. Генерисани код се може саставити за Питхон в2 и в3.
Преузимамо СИП са службене веб странице, затим идемо у фасциклу у којој смо га преузели, распакирамо датотеку сип-4.17.тар.гз, приступамо фасцикли и конфигуришемо СИП и инсталирамо са следећим кодом из прозора терминала.
 питхон цонфигуре.пи маке маке инсталл
Поставили смо КТ5 као подразумевану верзију:
 судо апт-гет инсталл кт5-дефаулт
На крају преузимамо и инсталирамо ПиКт које су библиотеке које ће нам требати за повезивање Питхон -а и КТ Десигнер -а
Преузмите ПиКт са његове званичне веб локације, затим идемо у фасциклу у којој смо га преузели, распакирајте датотеку ПиКт и приступите фасцикли и конфигурирајте је са следећим кодом из прозора терминала.
 питхон цонфигуре.пи
Направићемо једноставну апликацију од Кт дизајнера. Дизајн ћемо направити тако што ћемо узети образац, занимаће нас само датотека са корисничким интерфејсом која ће бити интерфејс за дизајн. Наш пројекат се зове Диалога.

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

Затим ћемо имати екран са нашим прозором за дизајнирање, додајемо ТектЕдит и чувамо датотеку

Затим идемо у фасциклу пројеката, генерисане су и одговарајуће ц ++ датотеке, али користићемо само датотеку уи.
Затим ћемо с терминала морати превести датотеку диалога.уи у питхон, из прозора терминала користимо сљедећу наредбу:
 пиуиц5 -о диалога.пи диалога.уи

Ово генерише датотеку диалог.пи која је дизајн који смо имали у ц ++ који је сада доступан у Питхону, код је следећи
 # - * - кодирање: утф -8 - * - # Имплементација обрасца генерисана читањем корисничког интерфејса 'диалога.уи' # # Креирано: пон 26. октобар 21:31:56 2015 # од: ПиКт5 Генератор корисничког интерфејса 5.2.1 из ПиКт5 импорт КтЦоре, КтГуи, КтВидгетс цласс Уи_ДиалогА (објецт): деф сетупУи (селф, ДиалогА): ДиалогА.сетОбјецтНаме ("ДиалогА") ДиалогА.ресизе (400, 300) селф.буттонБок = КтВидгетс.КДиалогБуттонБок (ДиалогА) ДиалогА) селфГеометри (КтЦоре.КРецт (30, 240, 341, 32)) селф.буттонБок.сетОриентатион (КтЦоре.Кт. . ("буттонБок") селф.тектЕдит = КтВидгетс.КТектЕдит (ДиалогА) селф.тектЕдит.сетГеометри (КтЦоре.КРецт (20, 20, 361, 201)) селф.тектЕдит.сетОбјецтНаме ("тектЕдит") селф.ретранслатеУи (ДиалогАдит (ДиалогА) ) селф.буттонБок.аццептед.цоннецт (ДиалогА.аццепт) селф.буттонБок.рејецтед.цоннецт (ДиалогА.рејецт) КтЦоре.КМетаОбјецт.цоннецтСлотсБиНаме (ДиалогА) деф ретранслатеУи (селф, ДиалогА): _ТранслатеКт плицатион.транслате ДиалогА.сетВиндовТитле (_транслате ("ДиалогА", "Диалог"))
Ово је све што дизајнирамо у Кт Десигнер -у, сада га морамо повезати са кодом који га користи, за то ћемо креирати датотеку стартуп.пи и написати следећи код:
 импорт сис из ПиКт5.КтВидгетс увоз КАпплицатион, КДиалог из дијалога импорт * апп = КАпплицатион (сис.аргв) виндов = КДиалог () уи = Уи_ДиалогА () уи.сетупУи (виндов) виндов.схов () сис.екит (апп.екец_ ())
Видимо да увозимо библиотеке графичког приказа и увозимо дијалог датотеке са дизајном.
Затим означавамо да ће прозор бити дијалог, уи прозор ће имати дизајн дефинисан у класи Уи_ДиалогА () дефинисаној у датотеци дизајна и на крају тај дизајн се додељује прозору кроз функцију сетупУи.
Чувамо и извршавамо из командног прозора на следећи начин:
 питхон3 хоме.пи

У наставку ћемо створити једноставан, али функционалан уређивач текста. Направићемо нови пројекат за који смо заинтересовани за креирање графичких интерфејса. Пројекат ћемо назвати МиЕдитор.

Затим смо изабрали МаинВиндов као шаблон. У дизајну можемо имати мени и текстуалну поруку. Овде ће бити важно сваком објекту дати име како би се касније могао идентификовати и позвати на њега из Питхон кода. Затим га сачувамо и претворимо уи датотеку у питхон.
Конверзију вршимо из прозора терминала следећом командом:
 пиуиц5 -о миедитор.пи миедитор.уи
Код дизајна у питхону биће следећи:
 # - * - кодирање: утф -8 - * - # Имплементација обрасца генерисана читањем корисничког интерфејса '/тесткт/миедитор.уи' # # Направљено: пон 26. октобар 10:32:56 2015 # од: ПиКт5 УИ генератор кода 5.2. 1 # # УПОЗОРЕЊЕ! Све измене у овој датотеци ће бити изгубљене! из ПиКт5 увезите КтЦоре, КМаинВиндов, КАпплицатион, КтГуи, КтВидгетс класу Уи_МаинВиндов (објекат): деф сетупУи (селф, МаинВиндов): МаинВиндов.сетОбјецтНаме ("МаинВиндов") МаинВиндов.ресизе (533, 317) селф.централвигет (К3). МаинВиндов) селф.централвидгет.сетОбјецтНаме ("централни виџет") селф.гридЛаиоут = КтГуи.КГридЛаиоут (селф.централвидгет) селф.гридЛаиоут.сетОбјецтНаме ("гридЛаиоут") селф.тектЕдит = КтГуи.КТектЕдит. (селф.централдит.) Селф.тектЕдит (селф.централдит.) сетОбјецтНаме ("тектЕдит") селф.гридЛаиоут.аддВидгет (селф.тектЕдит, 0, 0, 1, 1) МаинВиндов.сетЦентралВидгет (селф.централвидгет) селф.менубар = КтГуи.КМенуБар (МаинВиндов) селф.менубар.сетГеометри (КтЦоре. КРецт (0, 0, 533, 25)) селф.менубар.сетОбјецтНаме ("менбар") селф.мену_Филе = КтГуи.КМену (селф.менубар) селф. мену_Филе.сетОбјецтНаме ("мену_Филе") селф.мену_Хелп = КтГуи.КМену (селф.менубар) селф.мену_Хелп.сетОбјецтНаме ("мену_Хелп") МаинВиндов.сетМенуБар (селф.менубар) селф.статусбар = КтГуи.КСтаб статусбар.сетОбјецтНам е ("статусна трака") МаинВиндов.сетСтатусБар (селф.статусбар) селф.ацтион_Нев = КтГуи.КАцтион (МаинВиндов) селф.ацтион_Нуево.сетОбјецтНаме ("ацтион_Нев") селф.ацтион_Опен = КтГуи.КАцтион (Маин_меНецтион) селф.ацтион_бјецтНаме (СетОбјецтНаме) "ацтион_Абрир") селф.ацтион_Саве = КтГуи.КАцтион (МаинВиндов) селф.ацтион_Саве.сетОбјецтНаме ("ацтион_Саве") селф.ацтионСаве_Ас = КтГуи.КАВА.АцтионАцтион селф.ацтион_Куит. КАцтион (МаинВиндов) селф.ацтион_Куит.сетОбјецтНаме ("ацтион_Куит") селф.ацтионА_боут = КтГуи.КАцтион (МаинВиндов) селф.ацтионА_боут.сетОбјецтНаме ("ацтионА_боут") селф.ацтион_Хп ацтион_Хелп (Главни прозор) селф.ацтион_Хелп "ацтион_Хелп") селф.мену_Филе.аддАцтион (селф.ацтион_Нев) селф.мену_Филе.аддАцтион (селф.ацтион_Опен) селф.мену_Филе.аддАцтион (селф.ацтион_Саве) селф.мену_Филе.дадцтион ) селф.мену_Филе (селф.АцтионСаве_Ас) селф.мену_Филе селф.ацтион_Куит) селф.мену_Хелп.аддАцтион (селф.ацтионА_боут) селф.мену_Хелп.аддАцтион (селф. ацтион_Хелп) селф.менубар.аддАцтион (селф.мену_Филе.менуАцтион ()) селф.менубар.аддАцтион (селф.мену_Хелп.менуАцтион ()) селф.ретранслатеУи (МаинВиндов) КтЦоре.КОбјецт.цоннецт (селф.ацтион_Куит, КтЦоре.СИГНАЛ ( селф.ацтион_Куит, КтЦоре.СИГНАЛ ("триггеред ()"), МаинВиндов.цлосе) КтЦоре.КМетаОбјецт.цоннецтСлотсБиНаме (МаинВиндов) деф ретранслатеУи (селф, МаинВиндов): МаинВиндов.сетВиндовТитле (КтГуи.КАпплицатион, МиЕдитор ", Ноне, КАпплицатионГуи", Ноне, КАпплицатионГуи ".УницодеУТФ8)) селф.мену_Филе.сетТитле (КтГуи.КАпплицатион.транслате (" МаинВиндов "," & Филе ", Ноне, КтГуи.КАпплицатион.УницодеУТФХ_п)). Селф.мену сетТитле ("КтГуи.КАпплицатион.транслате", "КтГуи.КАпплицатион.транслате" & Хелп ", Ноне, КтГуи.КАпплицатион.УницодеУТФ8)) селф.ацтион_Нуево.сетТект (КтГуи.КАпплицатион.транслате (" & НевВиндов, " , Ништа, КтГуи.КАпплицатион.УницодеУТФ8)) селф.ацтион_Абрир.сетТект (КтГуи.Абрир.сетТект (КтГуи.Абрир.сетТект (КтГуи.Абрир.сетТект). КАпплицатион.УницодеУТФ8)) селф.ацтион_Саве.сетТект (КтГуи.КАпплицатион.транслате ("Главни прозор", "& Сачувај", Ништа, КтГуи.КАпплицатион.УницодеУТФ8)) селф.ацтионСаве_Ас.сетТект (КтГуи.КАпплицатион.транслате ("МаинВиндов", "Саве & Ас", Ништа, КтГуи.КАпплицатион.УницодеУТФ8))) селф.ацтион_Куит.сетТикт " селф.транслате ") МаинВиндов", "& Екит", Ноне, КтГуи.КАпплицатион.УницодеУТФ8)) селф.ацтионА_боут.сетТект (КтГуи.КАпплицатион.транслате ("МаинВиндов", "За & близу", Ништа, КтГуи.КАпплицатион. УницодеУТФелп8)) селф.ацтион_ХницодеУТФелп8)). СетТект (КтГуи.КАпплицатион.транслате ("Главни прозор", "& Техничка подршка", Ништа, КтГуи.КАпплицатион.УницодеУТФ8)) 
Затим ћемо морати да програмирамо код да бисмо уреднику дали функционалност, инстанцирајући сваки мени и текстуално подручје код је прилично опсежан, овде развијамо само дизајн интерфејса и његову конверзију …
Креирање графичког корисничког интерфејса са Кт Десигнер -ом олакшава пројектовање апликација, а такође је и одличан алат за учење јер ће код зависити од нас.
Кт Десигнер вам омогућава да видите својства сваке компоненте пре него што је преведете, програмирање се такође може обавити без графичког интерфејса директно у било ком уређивачу текста ако познајемо потребне библиотеке и њихова својства.
Питхон такође може да рукује апликацијама које се повезују са базама података као што су Мискл или Склите, путем везе и операцијама на базама података са Питхоном, такође можемо додати визуелни интерфејс нашој апликацији креираној са графичким библиотекама Кт користећи ПиКт. Напредоваћемо даље са програмирањем графичких интерфејса за кориснике са Питхон у другом водичу.Да ли вам се допао и помогао овај водич?Можете наградити аутора притиском на ово дугме да бисте му дали позитиван поен
wave wave wave wave wave