ahoj takže ste přišli na přednášku jako

se petr hodina a jelikož jsem nikde nenarazil na

žádnou přednášku o qt framework tak sem se rozhod jednu takovou dělat

na začátek bych se zeptal důrazná qtčko

dobře to místnosti

tak proč je takové teďka neznají bych ho tak nějak trochu přiblížil a

jedná se vlastně o mutes platform fail or a to znamená že aplikaci kterou napíšete

můžete a na portovat na a windows a takové sme no s

a androida a další platformy

a kromě toho že tento framework je multiplatformní nebo vám nabídne i to že aplikace

bude mít aditivní vzhled pro danou platformou když nebude se mashe

a

koho to většinou když _e té fotce plus plusku případně nově

stejně tak čtyři sedum čtyři osum je tam podpora skriptovacího jazyka kina no

a

obrovskou výhodou qtčko je že

a nás velkou rozsahu dokumentaci a stovky příkladů

takže s ním poměrně stabilizační

ne začátku

pro qtčko víceméně jenom knihovna vyzkoušet oceli fingo slepě

a můžete si v něm naprogramovat bude aplikaci

která a může tahat data a

přes s internetu může pasovat jak se maroka

nebo dělat další řadu věcí

pro vývoj o většinou používáme a character taky designer

a na

pokoušet pokud máte nějakou aplikaci pro qtčko akceptují

portovat do mýho jazyk a potom vám velký nabízí snadno možnost lokalizace rizika

a neposlední řadě to také licence qt nabízí

tři druhy licence prvně komerční naučně

žít měl a posledně a učitel že znamená že a

když použitého jeep jel a tak a

váš kotel k vaší aplikaci nemusíte nikomu dávat

měl by se mohli přebukovat dycky

tak kde najdeme qtčko určitě to éčko soše desktopových prostředí

potom například o

přehrávače délce player

pokud někdo dělal nějaký

třída modelování možná na autodesk má jo toto desku

a taky vtom dělá vesmírná

evropská agentura

ta

tady na tom obrázku vlastně vidíte architekturu té teďka

a on

to dole je by se dalo říc podstatě

jsou moduly pro jednotlivé

platformy

a následně na to a to nebo zelené sou

a

klíčové moduly pro qtčko

k tomu dá máme vývojářské nástroje a jako jsou nějaký kriteria designer

a

na nějakou nápovědu

a licencování

tak ale jelikož jsem nechtěl

aby přednáška to

nicméně _m popis na

a tak sem se na to zařadit do přednášky a nějaký kus kódu

takže tady na tom

výřezu vidíte jednoduchou aplikaci

kde si na pár řádek vytvořen a tlačítko

a

vlastně na první řádek a ve funci main je vytvoření

si no to na paměti

na dalším pře kluky gimpu špatný uši vytváří samotné tlačítko

následně zavolám metodu

jako se jedná o objekt precise

a

přizpůsobim

okno s tlačítkem

a velikosti s tou na třicet

a tlačítko zobrazení

a

posledním řádkem metrem a po tak ze kterého vlastně spustím smyčku a kde qtčko

obsluhuje události

a

to znamená že a

a šel to je to má

kašlete to řádce se spustí samostatná samotná aplikace

a výsledek vidíte problém

rohu

ta

hezký vytvořit si tlačítko řešený vemete kapek to nic dělat nebude

takže tam přidáme

nějakou akci a aby když na tlačítko klikneme

tak se něco stalo

podstatě změnou lokte kterou sem tady u do důchodu je že

tlačítko všechny statické a dynamické se odpojil

a na druhém řádku přes

a dále si upravím opět _e rozměry to obrazem si ho

a

následně zavolám a

a funkci kolonek

která slouží

propojení za

signálu a slotu

a tady konkrétně říkám že vytvořím tlačítko

a

když na něj zmačknu

tak budu chtít aby se to tlačítko nebo respektive to okýnko zavřel

to se skutečně

stavu

tady je syntaxe signálu a slotu

nám řeknite starou syntaxi která se používá qt čtyřce

prvním parametrem je

ukazatel na a podstatě zdroj vedení tady to je ten signál

potom je to vlastně

ta metoda nebo ten signál jakoby

emitovány

a následně zdroj

zdroj cíl

a ne to byla

která se má zavolat pokuď k té události dojde

a fuk qt pětce se trošku měl syntaxe je to z důvodu toho že ta

původní nemožného neumožňovala kontrolu

a při překladu

znamená že pokud se udělali chybu řekněme že

ste se upsali a zvolil nesprávnou metodu

tak vám nevyskoč o řád varování žádnej error

qt pětce pokud respektive můžete furt úžasnou syntaxi

aniž můžete tu tak a vám poprvé řekne

že

ste udělali chybu

a path čtyřce ste se to zbyde a šel se tě štve aplikace běželo a

tady jste se koupit do

standardního

a výstupu tak a vona vlastně random řek že nelze propojit hlasy nás letem světem

ta

dalším příkladem nepodaří příklad se mzdu a čítač a teď jsem si

vytvořil třídu timer která dědí s tím timer

a třídy

a vlastně

vidíte že

na postup to tady mel a dále je tam a privátní slovo

první stav

co vše vlastně a si motor kterej vy vypisuje a kolika vteřin uběhlo

a von strukturu

nejprve

inicializuju

a

proměnnou tě která mě vlastně říká to těch ti kušnu za sebou

a potom

si pro pojem a signál a kterej náký timer tady timeout

s

se slapem

restart

následně řeknu že chci nastavit interval ten najednou přechodu tisíc milisekund nebo ti start nebo

a chce

milisekundy a spustím ta in

výsledkem je že ne time nevypisuje

výsledkem je a slušní najme

ty nevypisuje kolik vteřin

jak sestavit aplikaci qtčko je to relativně jednoduché

qtčko používá

you may

program kterej

nejdříve

vytvoří projektově soubor

následně zavoláte opět tím majitelem vytvořit makefile a sto metrů ste schopni generovat aplikaci

té ale takový trošku

pracný bylo to ručně pro to máme

a jednička

který nám práci usnadnilo

de vlastně

si řekneme že chceme založit nový projekt a leničko tvoří všechny potřebný soubory

díky litru podporuje tom nějakými u taktéž s imei

a standardní dva gramy tam jedeme

a

nebo jsem zmiňoval qtčko multiplatformní

a

abyste této multiplatform vlastně dosáhli tak predicate rok existuje luky ty

jeden takový vidíte na obrázku

a

tento kitia vlastně

a jakoby

popis celkový popis sestavení aplikace my si řeknete pro jakou platformu a chcete aplikaci sestavit

jakých komponent chcete použít

a vy bagr jakou verzi qtčko

případně a jaký chcete nastavit parametry prostředí té proměnné

vidíš pokud bych chtěl

a

vyvíjet pro android

a vytvořil bych si linky a je bych

dal kdybych přibylo

a parametr

na kompilátor pro

a

je canceller arm

a

no respektive

mobil danou aplikaci zkompilovat

prazdroj

případně pro nechal nebo windows

dá se říct litr nabízí

dále kytky nabízí nápovědu já integrovaná a

ještě po porodu

takže kontrolu systémů konkrétně bitu jsou takže

a

eště některých dalších

osobní zkušenost s bytem

k a

abych nemusel celý víčko programovat ručně

tak k tomu mám a

další nástroj nanoseconds _e

kde vlastně tady mám jakýsi plátno

a do kterýho můžou přetahovat různý míře ty znamená pokuď si

mačkací tlačítko a lidi motlíček po s případně něco složitějšího třeba

nějakej listu new rock ten před zobrazovat seznam pomůže

tak si jednoduše přetáhnu na a no a ono se mě zobrazí tady mám a

nějaký název jo

a danou komponentu

kterou pak můžu následně

adresovat fordu

a ještě tady mám ukázku jak vypadá

vlastně nebo respektive to co vytvoříte grafický má taky samozřejmě a nějakou textovou reprezentaci

je reprezentovaný

vlastně v souboru o co volí nebo

zpět i ve

název vašeho

vaší třídy

tečkou je

a je to xml soubor

který popisuje

a co se vlastně ve vaší aplikaci na ne že základem je míči

tady název respektive

a název který se nám to zní

a

za hlavní window tady to potom vidím že to mám nějak tlačítko

a tak dál a tak dál

tak

a následně potom o veselej třídě

zavolám

a

juraj se zabývají

takže metoda a

která mi

přečtete na konfigurační soubor

a vytvořit mi přesně to samý rozhraní chtěl jsem si vytvořil země

a následně pokud push chci jo

pokud chci ty komponenty něco dělal

a tak si můžu zavolat přes hory nebo

a jsou nastavit třeba a že nemá bejt je ta škrtlé

a

nejvíce nejdůležitější třídou von

netrefili nějaký účinek kterého dětí podstatě všechny a

další třídy nebo respektive pokud ta třída začíná písmenem tohle jednička nízký tom že

důvodem je že kluk jack zpřístupňuje třídám že zmiňovaný a signál jásoty

a dále umožňuje správu paměti

a tou zprávou paměti myslím že když si vytvořil

a

nějaký

okýnko není umístí na

tlačítko tak pokud tomu tlačítku konstruktoru předám

a ukazatel na to okno

tak o

když z vyšel o

na závěr zavře to okno tak se to tlačítko dal bude automaticky nemusím se o

to starat

já sám o

a poslední věcí kterou o tom že k nabízí že introspekce neznamená že se můžu

dívat na parametry

a

těch tří za na jsem

zjistit jaký má

jaký méno na ta třída např

případně nějaké další

a parametry

tak ptej se vypíchla nějaký běžně používaný třídy

imidže ty je klasický g komponenta prázdná

a string je třída která slouží pro práci s řetězci

na všechny standardní operace které jste čekali znamená a třeba

vyřízli tady ten kousek řetězce případně připojeny na začátek nakonec se tam řetězec

nebo zjistit jestli se vtom řetězci nalej za a daný text

a tak dále

jo vy ste je seznam

znamená že si můžu

jedná se o kontejneru třídu to znamená že

musim když jako root průlez musím říct

jakou komponentu bude mít to znamená že se vytvoření třeba ty vole jestli tu sedm

že by mi to list

řetězců

ty gumo celá příprava případně

odebírat

tím ono je by se dalo říct silný nemám

a

prokažte pro každý prvek

dvě hodnoty klíč a hodnotu

a kým hraješ funguje podobně akorát ty rodiče nejsou

a nesetříděný

a tím můstek je a zásobní

a tím ve které je a po

ta nějaký rozdíl je lépe věcem oproti léta čtyřce

asi nejvýraznější je podpora a takž a high resolution displej

displej

dále zaměření na mobil je to znamená no a android

a us

měl by byla předem výkon

a zároveň se zachovala kompatibilita splete čtyřkou by měl bejt možný s pustit berete se

školou aplikaci a s tím že jí vidíte tak tam používat path knihovny letech je

první knihovny

osobně jsem stejného

žádnej problém

a dál se

hrozný hodně pít k vůli

a samotný knihovny byly

a sou daleko víc modulárním teďka znamená a

můj komponenty jsou jsem vlastní knihovně si trvání další knihovně

jak se na o další a tak dál

ta pokud byste potřebuje dokumentaci tak doporučuju strenky do tý a jednou

případně i ty té no tady centos

a dále a

pokud máte rádi knížky účinků pane vás

jsou

a

který nás dovede von se průpravu od začátku

ty vole nebude aplikace

pokud byste chtěli potřeba vytvořit něco složitějšího

doporučil tohlencto tenhlencten dobrý den kdy vlastně for jsem rozebírají

věci typu webový prohlížeč a _e v c co vše pod kontrolou

teda jak jsem říkal

když potřebujete zobrazit například seznam položek seznam řetězcům a na nevíte kolik těch bude

a nebo potřebujete aby když na tu položku kliknete

tak to udělá něco speciálního

tomto

potom se dozvíte právě

to je mince

tak a pokud chcete tak ještě dnes tom workshop místnosti a sto třináct

sebou stačí

co časem

pleteš musel nestalo

dokud

haha tam já jsem koukal nedávno mi to bude dobrý by byl ten s tím

ten request matice patnáct nebo šestnáct kardinalito podstatě je stejně jako to dělají na a

ne les

jak sama sebe tam bylo to že

a

vy si tam řeknete

sou co tam dva druhy jak to jak trochu běžkách

a

mezikódem darem první druh na ten druhý tomu ale zatím si řeknete a

jak moc se to má jakoby pře násobit

jako by

zvětšuje

a co se týče obrázku tam je to řešení takže máte lístky složku někde s

obrázkama a

je tam jenom

nakonec tom obrázku do toho názvu přidáte

myslím je to _e

toto řešení prostě

ono se to načte ten obrázek takže to semestr a muset je ten engine

random si to vyřeší spustí a mám větší displej tak zvětšený celej ten lid že

a náš tu zprávu obrázku

takže se

já můžu pojedem na čas ty otázky byly třeba sam o čem jsem nedělal jako

to nemůžu srovnat může to srovnat třeba s pohledu já jsem dal javě

tak jako

nevidíte v chtěl vědet má tu výhodu že máte přístup podstatě ke všem ke všem

na rozhraní tady qtčko implementovaná jenom část

dost není tam implementovaný prostě všechno co tam přístupy ke kontaktům mapě senzorům a ty

důležitosti pokud chcete něco jinýho tak si

ram rozhraní

vy zavoláte džobu smyčko

dobře budu musíte udělat

sám

a co se týče velikosti a

performance tu tak ta velikost s

já nevím jak je to řešení jak to

protože když jsem viděl když jsem to zkoušel o

androidy let vlády čtyřka a tam to fungovalo podstatě tak byste se stáhnou aplikaci mi

nestalo

co však ocet jako bolí těch knihoven to se tam nainstaluje a potom ta aplikace

co si vytvoříte tak si to praha jako bys tu ty aplikace to co potřebuje

a co sem to tak nějak zkoumala tak pětce jak rychle jako by tady toto

naše daně knihoven takže tam se musí prostě všechno nacpat do ty aplikace je ta

aplikace to velká

to znamená nebo je to jeden dva megabajty třeba dvacet

a nikomu to neřeknu

esemesku

koukal jsem jak viděl mě to dělal podstatě takže o tom že ten žaluzky proces

který přímá ty vstupy a zároveň tam jakoby posílá nějaký ty výstupu prostě co se

má být nevyspali a voni toho šéfovi takže se tam vytvořit další jakoby vlákno takže

všechny ty vstupy co posílání do toho vás líto path

removy se posílá ty výstupy sparty

a

tam se předán kontrol to byl prostě ubohost co chci

no jak

jo

to jsem zapomněl zmínit a jedním cvikům wifinu třeba koji jo

případně možno se angažovat primitivně

je to

a zase ve čtvrtek rendered _e přes opengl tak můžete využít pokuď

a jakej platformu dosud nějaká grafická karta

a dopoledne

jak já začneš takovou android dala tam je to vyřešený převodovky který tomu že tam

můžete vytvoří dáte káčko

a určete může spustit ropnou simulátoru nebo na se to přesune

na ten mobil co chcete čitelně tabulek nebo ne

jako platformu když jsi windows a pak tam existuje

projekt že

a vám to vytvoří klasickej installer

řeknete mu prostě co to má použít co to má kubě vzít za knihovny kde

ta vaše aplikace jsou vaše vobrázky jo nějaký data všechno se to zabalí

a ho teda tomu uživateli asi pejdle přes záda sou jestli

prosím

tak nějak

respektive pokud má nainstalovaný qtčko

a tak to může spustit rovnou

pokud doma návce stě

my se bavíme o windows _e

pokud použít pokud to nemá odgermanizovaný path knihovny

pak si tam se nestalo přes ten salát

je to možná tvrdě to staticky ale to je právě to licencování že když to

bublině dynamicky tak bude použitelný přispěl na ten svůj to umí tancovat nějak chci

když to rozbili statickej tak _e sigkill vypadá že tu

dobře možná tak ale jako minimální musím říct jako

jak by lidi

musím říc teda i u toho vstupu že dynamického

pokud to tam někde já jsem co budu muset volit neviděl večer dynamicky tak pak

je možnost bedně prej statické že to bude prostě jedna velká binárka který můj tip

a jako proč pokud to tam nějak mají se dá použít _e že jo

tak ta a nebo

pak má ještě gps licenci citelné zveřejnil všechno nebo nějakou komerční

když budu mít něco bytu

nemyslím tak nějakejch asi patnáct mega to má

ale to jenom ten modul prostě pro políčko tam není nic že bych si tam

dal třeba podporu síťování nebo todleto se skočí třeba ve třicet

jako není to že by to mělo sto mega na kole

to nehrozí jako to je to relativně malý

a frame

jednak file

to furt umí jako to co běží na nějakých _e tedy platforma kde máš obrovském

ten hardvér nenašlo dost lidí tam řekněme s jaká varianta a co ti tam nejsou

xka tak to namontuje do framebufferu to je

jak on white se jsme chodili tam třeba jedna celá dvě sekundy no tak jestli

do dvou sekund a na této aplikace

nějaký dotazy

tak jel tak děkuju za pozornost a

dyžtak na workshopů