Úvod do JavaFX RICHARD LIPKA
|
|
- Viktor Horáček
- před 6 lety
- Počet zobrazení:
Transkript
1 Úvod do JavaFX RICHARD LIPKA
2 GUI a OS OS (jeho moduly) poskytuje funkce pro vytváření oken a základních GUI prvků Ve Windows Win32 / Win64 / WinCE API V OS X Cocoa, Quartz V Linuxu není v OS, X Windows, Simple DirectMedia Layer, Vysokoúrovňové knihovny s vlastními prvky GTK+ (Gnome), Qt (KDE), wxwidgets Volba technologie ovlivňuje: Rychlost GUI (nativní obvykle rychlejší) Vzhled (standardní pro daný OS nebo vlastní) JavaFX Kompletně vykreslována prostředky Javy (= platformě nezávislá) Vlastní look and feel (definovaný CSS styly lze snadno měnit) = nevypadá jako standardní Windows / MacOS aplikace UUR - ÚVOD DO JAVAFX 2
3 API pro GUI v Javě AWT (Abstract Window Toolkit) Starší, jednodušší, rychlejší (navázáno na volání OS API vzhled podle OS) Původní GUI v Javě Swing Novější, velmi komplexní (30 komponent) Pomalejší, vlastní vykreslování nezávislé na OS; ale bez nativního kódu, čistá Java Souběžně využívá některé věci z AWT (vychází z něj, přebírá událostní model, fonty, barvy, layouty) Velký důraz na MVC architekturu Existují nad ním vybudované knihovny (JGoodies) SWT Vytvořeno IBM, využité v Eclipse Využívá nativní kód, jednodušší než Swing JavaFX Moderní náhrada za Swing, od Java 8 má je součástí JRE/JDK Jednodušší práce s událostmi, deklarativní popis oken, využití CSS a HTML (stejná jména tříd jako u AWT) UUR - ÚVOD DO JAVAFX 3
4 JavaFX Oficiálně součástí Javy od verze 8 (březen 2014) První verze 2008 jako speciální skriptovací jazyk, v současné podobě od JavaFX 2.0 od r není to úplně nová a nevyzkoušená technologie Potřebuje vlastní běhové prostředí Od Javy 8 součástí JRE / JDK, do Javy 7 se dá doinstalovat Platformě závislé (stejně jako JRE) k dispozici pro Windows, Linux, MacOS, Solaris Existuje projekt JavaFXPorts (pod GluonMobiles, trial je zdarma) pro spouštění JavaFX aplikací na Androidu JavaFX Scene builder WISYWIG návrhář aplikace Návrh rozložení prvků, layoutů, podpora pro nastavení obsluh Funguje jen pro FXML soubory (neumí generovat zdrojový text Javy) Silná podpora CSS, lokalizačních souborů, tvorby kontrolerů Oracle ukončil vlastní vývoj, momentálně pod Gluon (zdarma, poslední verze z října 2017) UUR - ÚVOD DO JAVAFX 4
5 Drag and drop programování vs psaní zdrojového textu ručně Existují nástroje pro naklikání GUI JavaFX Scene Builder jako samostatná aplikace jako plugin do Eclipse, Netbeans, IntelliJ Idea Tvoří jen FXML soubory (XML popis GUI), ne volání z API podporuje dobré návyky rychlejší vývoj GUI aplikací, příprava formulářů ALE? Debugování programu, zejména složitých oken?? Recyklace formulářů bez zbytečného opakování?? Tvorba automatických testů (unit testy)?? Dynamické generování GUI podle dostupných dat? UUR - ÚVOD DO JAVAFX 5
6 JavaFX podporované technologie API V Javě, použitelné v dalších jazycích založených na JRE (jruby, Scala) FXML deklarativní popis GUI v XML souboru ( oddělení view od zbytku programu) CSS Nastavení vzhledu oddělené od definice view i od programu HTML schopnost zobrazovat a pracovat s HTML 5 (WebKit = Safari, OS X) Swing schopnost pracovat se Swing komponentami Dotyková zařízení podpora dotykových a vícedotykových gest Rich text podpora obousměrného textu (arabské jazyky), mnoha abeced a formátování textu v komponentách Grafika podpora 2D a 3D grafiky, na některých kartách podpora akcelerace (přehled podporovaných karet v dokumentaci) Média podpora pro přehrávání videa a zvuku (včetně streamování) Nasazení aplikace podpora pro vytvoření plně spustitelného programu (balí se do něj JRE a JavaFX) UUR - ÚVOD DO JAVAFX 6
7 Struktura knihovny Middleware pro ostatní moduly, řízení vláken Knihovny se kterými budete pracovat Získávání zdrojů z OS (okna, časovače, plochy ke kreslení) Vykreslovací jádro SW kreslení a spojení s GPU Kodeky, práce s kontejnery Webkit Převzato z UUR - ÚVOD DO JAVAFX 7
8 Základní aplikace Vstupní bod programu - třída Application Musí být děděna (abstraktní) Zahajuje vytváření GUI (metody init() a start() ) Ukončuje běh aplikace (metoda stop()) Běží ve vlastním vlákně (JavaFX Application Thread) Celá tvorba GUI Obsluhy všech událostí Ukončení: Patform.exit() preferované System.exit() funguje, ale pak se nevolá metoda stop() Vytvoření instance třídy Application Spuštení metody init() vlastní vlákno (spouštěč) Vytvoření instance scény Stage Spuštení metody start() vlastní vlákno Čeká na ukončení Volání metody stop() UUR - ÚVOD DO JAVAFX 8
9 Hello World okno public class HelloWorld extends Application { } public void start(stage primarystage) { Button btn = new Button(); btn.settext("say 'Hello World'"); } StackPane root = new StackPane(); root.getchildren().add(btn); Scene scene = new Scene(root, 300, 250); primarystage.settitle("hello World!"); primarystage.setscene(scene); primarystage.show(); public static void main(string[] args) { launch(args); } UUR - ÚVOD DO JAVAFX 9
10 FXML Hello World BorderPane border = new BorderPane(); Label toppanetext = new Label("Page Title"); border.settop(toppanetext); Label centerpanetext = new Label ("Some data here"); <BorderPane> <top> <Label text="page Title"/> </top> <center> <Label text= "Some data here"/> </center> </BorderPane> border.setcenter( centerpanetext); UUR - ÚVOD DO JAVAFX 10
11 Jeviště (Stage) top level container Obvykle reprezentuje 1 okno aplikace (nemusí) Aplikace funguje dokud je na obrazovce alespoň jedno okno Kontejner může obsahovat další komponenty Komponenty uloženy v Grafu scény (Scene, ve skutečnosti strom) Obsahuje uzly (Node) - společný předek pro všechny komponenty GUI Další kontejnery (panely, skupiny, menu) - root Ovládací prvky (tlačítka) Zobrazovací prvky (tabulky, grafy, stromy) Vstup od uživatele (textová pole, zaškrtávací políčka) UUR - ÚVOD DO JAVAFX 11
12 Prvek scény - Node Jakýkoliv element scény který vidíte Obsahuje ID (textová identifikace pro CSS), musí být unikátní, pokud je nastaveno (potřeba hlavně ve FXML) StyleClass třída (nebo několik tříd) pro CSS Parent rodič uzlu (nadřazený prvek) UserData s uzlem lze spojit jeden datový objekt + cokoliv dalšího podle konkrétní komponenty Lze na něj aplikovat Efekty (stíny, rozmazání, ) Průhlednost Transformace (pozice, natočení, zvětšení, zkosení) Může odchytávat události a reagovat na ně UUR - ÚVOD DO JAVAFX 12
13 Struktura scény V kořeni musí být kontejner (potomek Parent panely, toolbary, ) Každá komponenta vložena jen jednou Node má rodiče, při opětovném vložení se rodič změní (automaticky) Lze vytvářet hierarchii do sebe vnořených panelů layoutování Změny pozice a velikosti podle změny velikosti okna Struktura by měla odrážet logiku používání okna (u složitých formulářů) Řídící panel Obsahový panel OK tlačítko Storno tlačítko Zobrazovací panel Textová oblast Scene Hlavní panel Menu Sobor Menu Položka 1 Položka 2 Menu Nápověda UUR - ÚVOD DO JAVAFX 13
14 Reprezentace GUI v počítači SCÉNA Sada objektů k vykreslení Tlačítka, panely, tabulky, Mají určené: Pozice, rozměry, nadřazené prvky Vzhled Obslužné objekty lze detekovat události lze jimi manipulovat Zpracování Souřadnice pro detekci událostí Překreslení jen toho co je potřeba Nutné převést na obrázek (u nativního GUI to zařídí OS) VYKRESLOVANÝ OBRAZ Bitmapa 2D pole pixelů (barev) Mohou být 2 double buffering Může být přímo vykreslen na zobrazovací zařízení (existují i vektorová neobvyklé) Práce s ním hlavně ve fullscreenu Hry, 3D grafika, přehrávání videa lze získat i okno pro vykreslování (místo nativního GUI knihovna kreslí všechno sama) Zpracování Přímé změny barvy na pixelu Pravidelné překreslení (snímkovací frekvence) UUR - ÚVOD DO JAVAFX 14
15 Společné vlastnosti všech uzlů Souřadnice getboundsinlocal() netransformované lokální souřadnice getboundsinparent() transformované souřadnice v prostoru rodiče contains(), intersect() testuje jestli je bod / obdélník uvnitř uzlu (jen obalový obdélník) screentolocal(), LocalToScreen(), ParentToLocal(), LocalToParent() transformuje souřadnice scény, uzlu a rodiče Viditelnost a použitelnost setvisible() viditelnost uzlu (a potomků) vyřazuje z grafu setopacity() nastavení průhlednosti (1 - neviditelné) stále vykreslován setdisable() nastavení uzlu (a potomků) na vypnuto toback(), tofront() pohyb v rámci pole potomků UUR - ÚVOD DO JAVAFX 15
16 Specializované uzly potomci Node Shape, Shape3D Společný předek pro obecné tvary (kruhy, čáry, ) Vlastnosti jako je barva výplně a ohraničení, styl čáry, konce čar Canvas Plocha pro vlastní kreslení ( bitmapové ) ImageView Uzel pro vykreslování obrázků (Image png, jpg, gif) MediaView Uzel pro vykreslení obsahu média (MediaPlayer) Parent Společný předek pro uzly které mohou mít další potomky (grafy, panely) protected ObservableList<Node> getchildren() v panelech překryta veřejnou podobou Potomek je i Control tlačítka a další ovládací prvky SwingNode Uzel pro vložení Swing komponent zpětná kompatibilita UUR - ÚVOD DO JAVAFX 16
17 Vkládání komponent Node má potomky uložené v kolekci (rozhraní ObservableList<Node> - nová kolekce v JavaFX) Metoda add() a addall() pro vkládání dalších uzlů (mění i vkládaný uzel nastavuje mu předka!) Musím získat referenci na kolekci: parent.getchildren().add(newnode); Kořenový uzel se vkládá přes konstruktor: stage.setscene(new Scene(root, 300, 250)); Primární Stage získám jako parametr metody start(): public void start(stage primarystage) UUR - ÚVOD DO JAVAFX 17
18 Jmenné konvence Nejsou povinné, závisí na firemním prostředí ale mohou se hodit Lepší čitelnost programu Na druhé straně překladač i IDE typ reference zná a napovídá Nutné důsledně dodržovat v celém programu Pozor na míchání češtiny a angličtiny, někdy vadí více, někdy méně Pozor na kreativní mizzpelling nebo skutečné chyby (na druhé straně někdy může být záměrný - v knihovnách Javy např. Clazz) V JavaFX 2 typy jmen Jména referencí Identifikátory objektů a tříd pro CSS a FXML (vždy textové) - nepovinné Pozor, jména tříd JavaFX z package javafx, stejné jako jména z AWT Např. Button: okbutton, okbt, Menu: filemenu, filemn, Label: averagelabel, averagelb, UUR - ÚVOD DO JAVAFX 18
19 Dělení aplikace Objekty vždy zodpovědné za jednu věc, neměly by bát moc dlouhé rozumně dělit tvorbu GUI do metod Typické řešení: Privátní metody pro každý panel (skupinu prvků v GUI) nebo složitější komponentu (vyžaduje několik nastavení) Vrací hotový uzel (panel naplněný komponentami) Využívá volání dalších metod, pokud jsou uvnitř další panely Pro každé okno vlastní třída Vhodné konstruktory pro plnění daty? Pro složitější a znovupoužitelné komponenty (které nejsou v API) určitě vlastní třída Řídící panel Obsahový panel OK tlačítko Storno tlačítko Zobrazovací panel Textová oblast Scene Hlavní panel Menu Sobor Menu Položka 1 Položka 2 Menu Nápověda UUR - ÚVOD DO JAVAFX 19
20 Strukturování zdrojového textu Jen doporučení není povinné, ale zlepšuje přehlednost aplikace 1 třída 1 funkce Vstupní bod aplikace potomek Application pro každé okno vlastní třída (může a nemusí být potomek Stage) GUI by nemělo provádět funkce jádra aplikace propojit s ním přes vhodné rozhraní (= pokud aplikace ukládá do DB v obsluze se jen volá metoda jádra, ne samotné ukládání) 1 metoda 1 funkce Netvořit celé okno v jedné metodě Konvence: každý uzel stromu scény má vlastní metodu, která vrací Node a stará se o jeho vytvoření pokud je složen z dalších uzlů, volá potřebné metody Jednoduchá obsluha V obslužné metodě jen minimum kódu Ideálně 1 řádek který volá obslužnou metodu (nejspíš privátní) UUR - ÚVOD DO JAVAFX 20
21 Naslouchání událostem Události zachycené OS, předané do JavaFX frameworku Oznamují aplikaci že se něco stalo obvykle interakce s uživatelem Framework události většinu vytváří a posílá sám Reprezentované instancemi třídy Event Řada specializovaných potomků podle původce události a informací které nese (stisknutá klávesa, pohyb myši, ) Každá komponenta může naslouchat všem událostem, jen je třeba nastavit obsluhu Metody seton () např. setonaction(), setonmouseentered(), (zděděné z Node) UUR - ÚVOD DO JAVAFX 21
22 Událost Třída Event a její potomci Zdroj události (metoda getsource() ) kdo ji vyvolal rodič prvku Cíl události (metoda gettarget() ) kam událost směřuje (v grafu scény) (občas stejný objekt jako zdroj události) Typ události : umožňuje specifikovat detaily události (metoda geteventtype() ) UUR - ÚVOD DO JAVAFX 22
23 Propagace události Rozhraní EventTarget pokud může komponenta být cílem události (implementuje ho Window, Scene, Node) Klávesnice cílem je komponenta která má fokus Myš cílem komponenta pod kurzorem Dotyková gesta všechny body kterých se dotýkáte na začátku Pokud je komponent víc, bere se vrchní (na obrazovce list stromu) Při déletrvajícím gestu události předávány cíli ze začátku gesta Událost předávána ve stromu (scéna panely cíl) Projde skrz všechny rodiče ve scéně k cíli a zpět ke scéně Event capturing cesta dolů, filtry addeventfilter(eventtype, EventHandler) Event bubbling cesta nahoru, obsluhy addeventhandler(eventtype, EventHandler) Pohlcení události consume() UUR - ÚVOD DO JAVAFX 23
24 Doporučení pro obsluhu událostí Obsluha by měla být co nejkratší Běží ve stejném vlákně jako vykreslování GUI Pokud je dlouhá, provést ve vlastním vlákně Obsluha není / nemusí být součástí View vhodně ji oddělit do vlastního objektu nebo alespoň metody (alespoň kousek ji ve View vždycky zbyde) Delegovat na objekty, které mají potřebnou odpovědnost Nezapomenout na kontrolu dat Nemusí být součástí View, ale někde v obsluze se musí objevit UUR - ÚVOD DO JAVAFX 24
25 Obslužný objekt Jednotné rozhraní pro obsluhu všech typů událostí EventHandler Jediná metoda handle(t event), rozhraní typováno: EventHandler<T extends Event> na jakéhokoliv potomka třídy Event Podle metody seton () lze implementovat vhodný objekt MouseEvent pro události myši ActionEvent pro akce spuštěné v GUI (stisknuté tlačítko) KeyEvent pro stisknuté klávesy Základní obslužný objekt (Controller): public Class BTActionHNDL implements EventHandler<ActionEvent> { } public void handle(actionevent e) { } Button btn = new Button(); btn.setonaction( new ButtonActionHandler()); UUR - ÚVOD DO JAVAFX 25
26 Anonymní vnitřní třída Obsluha události je jen na jednom místě nepotřebuji celou třídu Nepřehledné pokud je obsluha delší neměla by být Button btn = new Button(); btn.setonaction(new EventHandler<ActionEvent>() { public void handle(actionevent e) { } }); Přímo ve volání metody setonaction() vytvořena nová třída jako implementace rozhraní EventHandler<ActionEvent> Typ zvolen podle metody která obsluhu registruje V metodě handle() je samotná obsluha UUR - ÚVOD DO JAVAFX 26
27 Malá odbočka k typům v parametrech metod EventHandler<ActionEvent> typováno na ActionEvent EventHandler<? super MouseEvent> typováno na MouseEvent (Event, InputEvent) a její předky ( spodní hranice) Typicky pro konzumenty pokud jen vkládám do kolekce (Object... MouseEvent) CssMetaData<? extends Styleable> typováno na Styleable a její potomky ( horní hranice) Typicky pro producenty pokud jen vybírám z kolekce (Styleable a potomci) Označení typů z API: E prvek (obvykle u kolekcí) K klíč V hodnota T obecně typ N číselný typ UUR - ÚVOD DO JAVAFX 27
28 Lambda výraz jako náhrada vnitřní třídy Anonymní vnitřní třídu lze přepsat na lambda výraz Pokud je parametrem reference na funkční rozhraní (1 metoda k implementaci, je vidět v dokumentaci k API) Button btn = new Button(); btn.setonaction(event -> { }); Typ parametru event odvodí překladač automaticky z definice metody setonaction(eventhandler<actionevent> value) UUR - ÚVOD DO JAVAFX 28
29 Privátní obslužné metody Ve vnitřní třídě / lambda výrazu volána jen jedna obslužná metoda Součást nadřazené třídy může být privátní nebo Z jiné třídy (Controller) Obsluha vnitřní třídy krátká a přehledná Button btn = new Button(); btn.setonaction(event -> btnactionperformed(event)); private void btnactionperformed(actionevent e) { } UUR - ÚVOD DO JAVAFX 29
30 Obsluha ve vlastním vlákně Dlouhá obsluha (komprese, odesílání, ukládání) celkem běžná Blokuje GUI zamrzne a nereaguje na uživatele potřebuji oddělit do vlastního vlákna Rozhraní Worker<V> pro implementaci vlákna Typováno na V typ návratové hodnoty (vlákno končí vrácením výsledku) Možnost řídit běh zvenku (na rozdíl od běžných Java vláken) musí zajistit implementující třída Lze se dotazovat na stav (isrunning(), getstate(), getprogress(), getmessage()) Implementace ve třídě Task<V> Metoda call() ve které je užitečná práce Musí se chovat hezky a podporovat řízení zvenku Běží na pozadí, dokáže informovat o stavu, neblokuje vykreslovací smyčku Explicitně určena pro použití v JavaFX Jednorázová při každé obsluze je třeba vytvořit novou instanci (existuje i znovupoužitelná Service<V>, ale to přináší některé komplikace) UUR - ÚVOD DO JAVAFX 30
31 Obsluha ve vlastním vlákně příklad základní smyčky Task<Integer> task = new Task<Integer>() { protected Integer call() throws Exception { int it; for (it = 0; it < ; it++) { if (iscancelled()) { break; } System.out.println("it " + iterations); } return it; } }; Thread th = new Thread(task); th.start(); UUR - ÚVOD DO JAVAFX 31
32 Obsluha ve vlastním vlákně smyčka s aktualizací stavu Task<Integer> task = new Task<Integer>() { protected Integer call() throws Exception { int it; for (it = 0; it < ; it++) { if (iscancelled()) { updatemessage("canceled"); break; } updatemessage("iteration " + it); updateprogress(it, ); } return it; } }; Thread th = new Thread(task); th.start(); UUR - ÚVOD DO JAVAFX 32
33 Děkuji za pozornost OTÁZKY? NÁZORY, PŘIPOMÍNKY? PŘÍŠTĚ: ZÁKLADNÍ LAYOUTY V JAVAFX
GUI. JavaFX. Java UI, letní semestr 2017/2018 1
GUI JavaFX 1 Přehled Java GUI Java 1.0 (1996) AWT použití nativních GUI komponent Java 1.2 (2000) Swing kompletní GUI v Javě JavaFX (2007) nová technologie běžící nad Java VM ale vlastní jazyk deklarativní
VíceAplikace s grafickým uživatelským rozhraním
Aplikace s grafickým uživatelským rozhraním doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz 1 Typy aplikací Konzolová
VíceBridge. Známý jako. Účel. Použitelnost. Handle/Body
Bridge Bridge Známý jako Handle/Body Účel odděluje abstrakci (rozhraní a jeho sémantiku) od její konkrétní implementace předchází zbytečnému nárůstu počtu tříd při přidávání implementací používá se v době
VícePři studiu tohoto bloku se předpokládá, že student je zvládá základy programování v jazyce Java s využitím vývojového prostředí NetBeans.
1 Grafické rozhraní Studijní cíl Tento blok je věnován vytváření programů s využitím grafického rozhraní (GUI). Vysvětlen bude základní filozofie pro vytváření aplikací s GUI ve srovnání s konzolovými
VíceGoogle Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky
Google Web Toolkit Martin Šurkovský, SUR096 Vysoká škola Báňská - Technická univerzita Ostrava Katedra informatiky 29. března 2010 Martin Šurkovský, SUR096 (VŠB - TUO) Google Web Toolkit 29. března 2010
Více8. GRAFICKÉ UŽIVATELSKÉ ROZHRANÍ
8. GRAFICKÉ UŽIVATELSKÉ ROZHRANÍ Abstract Window Toolkit (AWT) je část Java Core API, kterou tvoří balíky: java.awt, java.awt.event (od JDK 1.1), java.awt.image, java.awt.datatransfer (od JDK 1.1). AWT
VíceJazyk C# (seminář 9)
Jazyk C# (seminář 9) Pavel Procházka KMI 19. listopadu 2014 Motivace proč GTK# Moderní přístup k psaní GUI Základ (GTK+) je napsaný v C, ale podporuje celou řadu jazyků (Vala, Python, JavaScript, C#,...
VíceObsah. Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13
Úvod 11 Základy programování 11 Objektový přístup 11 Procvičování 11 Zvláštní odstavce 12 Zpětná vazba od čtenářů 12 Errata 13 KAPITOLA 1 Na úvod o Javě 15 Počítačový program 15 Vysokoúrovňový programovací
VíceAbstraktní třída a rozhraní
Abstraktní třída a rozhraní Někdy se může stát, zejména při psaní v hierarchické struktuře hodně nadřazených tříd, že tušíme, že bude ve zděděných třídách vhodné použít nějakou metodu. Tuto metodu ještě
VíceÚvod do programovacích jazyků (Java)
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích
VíceObsah přednášky. GUI v Javě a událostmi řízené programování. Základní prvky grafického rozhraní. Základní komponenty.
GUI v Javě a událostmi řízené programování Obsah přednášky GUI v Javě (připomínka) Návrhář GUI Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 4 A0B36PR2
VíceHiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control)
Hiearchical MVC (Model-view-controller) vs. PAC (Presentation-abstraction-control) Problém HMVC úvod MVC v určitých aplikacích nedostačující Příklad: webová stránka s widgety Např. kalendář, hodnocení,
VíceMultiplatformní GUI toolkity
Multiplatformní GUI toolkity GTK+ a Qt Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI GUI toolkit (widget toolkit) (1) = programová knihovna (nebo kolekce knihoven) implementující prvky
VíceGUI v Javě (připomínka) Návrhář GUI Příklad aplikace MVC Model-View-Controller Události Vnitřní třídy. MVC Model-View-Controller
GUI v Javě a událostmi řízené programování Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 4 A0B36PR2 Programování 2 Obsah přednášky GUI v Javě (připomínka)
VíceTÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 29. Otázka : Zpracování událostí: mechanismus událostí a jejich zpracování (Event/Listener), nepřímá invokace (Observer/Observable). Obsah : 1. Mechanisums
VíceGUI v Javě a událostmi řízené programování
GUI v Javě a událostmi řízené programování Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 4 A0B36PR2 Programování 2 Jan Faigl, 2016 A0B36PR2 Přednáška
VíceGenerické programování
Generické programování Od C# verze 2.0 = vytváření kódu s obecným datovým typem Příklad generická metoda, zamění dva parametry: static void Swap(ref T p1, ref T p2) T temp; temp = p1; p1 = p2; p2 =
VíceSWT & MigLayout. Alternativy Java GUI v praxi. Pavel Janečka & Tomáš Chlouba. červen 2011
SWT & MigLayout Alternativy Java GUI v praxi Pavel Janečka & Tomáš Chlouba červen 2011 SWT SWT & MigLayout Historie Komponenty a události Vývoj aplikací a ukázky MigLayout Java Layout Managery Ukázka použití
VíceNetBeans platforma. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
NetBeans platforma Aplikační programování v Javě (BI-APJ) - 7 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme
VíceSemináˇr Java X J2EE Semináˇr Java X p.1/23
Seminář Java X J2EE Seminář Java X p.1/23 J2EE Složitost obchodních aplikací robusní, distribuované, spolehlivé aplikace s transakcemi na straně serveru, klientské aplikace co nejjednodušší Snaha : Návrh,
Více11.5.2012. Obsah přednášky 9. Skrývání informací. Skrývání informací. Zapouzdření. Skrývání informací. Základy programování (IZAPR, IZKPR) Přednáška 9
Obsah přednášky 9 Základy programování (IZAPR, IZKPR) Přednáška 9 Základy dědičnosti, přístupová práva Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 03 022, Náměstí Čs. legií
VíceProgramátorská příručka
KAPITOLA 1. PROGRAMÁTORSKÁ PŘÍRUČKA Kapitola 1 Programátorská příručka 1.1 Úvod 1.1.1 Technologie Program je psaný v jazyce Java 1.7. GUI je vytvářeno pomocí knihovny SWT. (http://eclipse.org/swt/) Pro
VíceEnterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java
Více2 Grafický výstup s využitím knihovny
2 Grafický výstup s využitím knihovny Studijní cíl Tento blok je věnován základním principům při vytváření grafického výstupu pomocí standardních metod, které poskytuje grafické rozhraní. V textu budou
VíceJava GUI události. Událostmi řízené programování. Zpracování = obsluha událostí
Java GUI události Cílem kapitoly je přiblížit hlavní princip událostmi řízeného programování a ukázat na příkladu způsob řešení pro konkrétní případ. Soubor obsahuje také tabulku s přehledem nejčastěji
Více14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.
Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání
VíceObsah přednášky. GUI v Javě a událostmi řízené programování. Základní prvky grafického rozhraní. Základní komponenty.
GUI v Javě a událostmi řízené programování Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 6 B0B36PJV Programování v JAVA Obsah přednášky GUI v Javě
VíceAlgoritmizace a programování
Algoritmizace a programování Struktura programu Vytvoření nové aplikace Struktura programu Základní syntaktické elementy První aplikace Verze pro akademický rok 2012/2013 1 Nová aplikace NetBeans Ve vývojovém
VíceGUI v Javě a událostmi řízené programování
GUI v Javě a událostmi řízené programování Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 6 B0B36PJV Programování v JAVA Jan Faigl, Jiří Vokřínek,
VíceGUI - úvod. V této kapitole si ukážeme návod, jak vytvořit jednoduchou grafickou aplikaci a umístit do ní některé další grafické prvky.
GUI - úvod V této kapitole si ukážeme návod, jak vytvořit jednoduchou grafickou aplikaci a umístit do ní některé další grafické prvky. Klíčové pojmy: Grafické uživatelské rozhraní, grafické komponenty,
VíceJava a XML. 10/26/09 1/7 Java a XML
Java a XML Java i XML jsou přenositelné V javě existuje podpora pro práci s XML, nejčastější akce prováděné při zpracování XML: načítání XML elementů generování nových elementů nebo úprava starého zápis
Více11 Diagram tříd, asociace, dědičnost, abstraktní třídy
11 Diagram tříd, asociace, dědičnost, abstraktní třídy Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost diagramům tříd, asociaci,
Více1. Úvod do obsluhy AutoCADu
1. Úvod do obsluhy AutoCADu Studijní cíl V této lekci se naučíme: Seznámíme se s potřebným zařízením. Způsoby ovládání. Nastavení AutoCADu. Doba nutná k procvičení 1,5 hodiny 1.1 AutoCAD AutoCAD je plnohodnotný
VíceJava aplety. Předávání parametrů z HTML
Java aplety Aplety jsou speciální formou Java aplikací - mohou být spouštěny z prostředí WWW prohlížeče. Aby je prohlížeč spustil, musíme vložit do HTML stránky potřebné příkazy:
VíceGUI v Javě a událostmi řízené programování
GUI v Javě a událostmi řízené programování Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 6 B0B36PJV Programování v JAVA Jan Faigl, Jiří Vokřínek,
Více1. Programování proti rozhraní
1. Programování proti rozhraní Cíl látky Cílem tohoto bloku je seznámení se s jednou z nejdůležitější programátorskou technikou v objektově orientovaném programování. Tou technikou je využívaní rozhraní
VíceTechnologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011
Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP
VíceDědění, polymorfismus
Programování v jazyce C/C++ Ladislav Vagner úprava Pavel Strnad Dědění. Polymorfismus. Dnešní přednáška Statická a dynamická vazba. Vnitřní reprezentace. VMT tabulka virtuálních metod. Časté chyby. Minulá
VíceTŘÍDY POKRAČOVÁNÍ. Události pokračování. Příklad. public delegate void ZmenaSouradnicEventHandler (object sender, EventArgs e);
TŘÍDY POKRAČOVÁNÍ Události pokračování public delegate void ZmenaSouradnicEventHandler (object sender, EventArgs e); class Bod private int x; private int y; public event ZmenaSouradnicEventHandler ZmenaSouradnic;
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VícePrvní kapitola úvod do problematiky
První kapitola úvod do problematiky Co je to Flex Adobe Flex je ActionSript (AS) framework pro tvorbu Rich Internet Aplications (RIA), tedy knihovna AS tříd pro Flash. Flex používáme k vytvoření SWF souboru
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VíceIRAE 07/08 Přednáška č. 7. Začátek (head)
Fronta (Queue) FIFO First In First Out (první dovnitř první ven) Vložení položky (Enqueue) Vyjmutí položky (Dequeue) Přidávání prvků Konec (Tail) Začátek (head) na jedné straně (konec) Odebírání prvků
VíceGUI. Systémová integrace pro desktopové aplikace
GUI Systémová integrace pro desktopové aplikace Java, zimní semestr 2016 11.1.2017 1 java.awt.desktop systémová integrace desktopových aplikací static boolean isdesktopsupported() test zda je integrace
VíceÚvodem Seznámení s HTML Rozhraní Canvas... 47
Stručný obsah Úvodem... 17 1. Seznámení s HTML5... 21 2. Rozhraní Canvas... 47 3. Práce s audiem a videem v HTML5... 85 4. Geolokační rozhraní... 109 5. Komunikační rozhraní... 137 6. Rozhraní WebSocket...
VíceKTE / ZPE Informační technologie
4 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Největší
VíceUživatelská rozhraní 10. cvičení. Martin Němec A
Uživatelská rozhraní 10. cvičení Martin Němec A1047 +420 597 324 438 Úvod do Qt GUI toolkit Qt (cute) Samostatná knihovna společnosti TrollTech. Podpora platforem Windows, Linux, Mac. Vzhled i chování
VíceUJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/
UJO Framework revoluční architektura beans verze 0.80 http://ujoframework.org/ Pavel Pone(c), září 2008 Historie rok 2004 upravené objekty z frameworku Cayenne nevýhodou byla špatná typová kontrola rok
VíceAndroid 100% Java telefon. Petr Musil
Android 100% Java telefon Petr Musil 1 Vytvoření aplikace Prostředí pro vývoj Android SDK http://developer.android.com/sdk/index.html ADT plugin pro Eclipse http://developer.android.com/sdk/eclipse-adt.html
Více3 KTE / ZPE Informační technologie
3 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Komentáře
VíceKMI / TMA Tvorba mobilních aplikací
KMI / TMA Tvorba mobilních aplikací 2. seminář 5.10.2018 ZS 2017/2018 STŘEDA 13:15-15:45 OBSAH SEMINáře konfigurační soubory projektu, aktivity, základní události, životní cyklus aplikace, intenty a práce
Více2 Tvorba interaktivních grafických programů
2 Tvorba interaktivních grafických programů Studijní cíl Tento blok je věnován vytváření interaktivních grafických programů. Podrobně bude vysvětleno, jakým způsobem je možno programově reagovat na události
VíceNápověda k aplikaci EA Script Engine
Nápověda k aplikaci EA Script Engine Object Consulting s.r.o. 2006 Obsah Nápověda k aplikaci EA Script Engine...1 1. Co je EA Script Engine...2 2. Důležité upozornění pro uživatele aplikace EA Script Engine...3
Víceboolean hasnext() Object next() void remove() Kolekce
11. Kontejnery Kontejnery Kontejnery jako základní dynamické struktury v Javě Kolekce, iterátory (Collection, Iterator) Seznamy (rozhraní List, třídy ArrayList, LinkedList) Množiny (rozhraní Set, třída
VíceDefinice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky
JAVA Třídy Definice třídy úplná definice [public] [abstract] [final] class Jmeno [extends Predek] [impelements SeznamInterfacu] {... // telo tridy public veřejná třída abstract nesmí být vytvářeny instance
VíceKMI / TMA Tvorba mobilních aplikací. 2. seminář ZS 2016/2017 Středa 13:15-15:45
KMI / TMA Tvorba mobilních aplikací 2. seminář 5.10.2016 ZS 2016/2017 Středa 13:15-15:45 OBSAH SEMINáře konfigurační soubory projektu, aktivity, základní události, životní cyklus aplikace, intenty a práce
VíceOSGi. Aplikační programování v Javě (BI-APJ) - 6 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha
OSGi Aplikační programování v Javě (BI-APJ) - 6 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
VíceProgramovací jazyk Java
1 z 8 Programovací jazyk Java Enumerace (výčty) Složitější definice výčtového typu Konstanty anonymních typů Výčtový typ a datové struktury Java packaging JAR archivy CLASSPATH Apache Ant 10. přednáška
VíceStatické proměnné a metody. Tomáš Pitner, upravil Marek Šabo
Statické proměnné a metody Tomáš Pitner, upravil Marek Šabo Úvod Se statickou metodou jsme se setkali už u úplně prvního programu - Hello, world! public class Demo { public static void main(string[] args)
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VíceClass loader. každá třída (java.lang.class) obsahuje referenci na svůj class loader. Implementace class loaderu
Seminář Java Zavádění tříd Radek Kočí Fakulta informačních technologií VUT Duben 2008 Radek Kočí Seminář Java Zavádění tříd 1/ 16 JVM zavádí třídy dynamicky Class loader objekt schopný zavádět třídy abstraktní
Více1. Dědičnost a polymorfismus
1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář
VíceIRAE 07/08 Přednáška č. 1
Úvod do předmětu OOP Objekt Proč OOP? Literatura, osnova předmětu viz. cvičení Základní prvek OOP sw inženýrství = model reálných objektů (věcí) člověk, auto, okno (ve windows), slovník, = model abstraktní
VíceArchitektura rodiny operačních systémů Windows NT Mgr. Josef Horálek
Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek = Velmi malé jádro = implementuje jen vybrané základní mechanismy: = virtuální paměť; = plánování vláken; = obsluha výjimek; = zasílání
VíceZačínáme s vývojem pro Android
Pavel Petřek CTO Praha, 14. dubna 2010 Kdo je kdo Pavel Petřek Vývojář, přednášející, entusiasta světa chytrých telefonů (a velký jedlík) Spoluzakladatel Inmite Inmite Vývoj pro chytré telefony (Android:
VíceZ. Kotala, P. Toman: Java ( Obsah )
Z. Kotala, P. Toman: Java ( Obsah ) 13. Výjimky Výjimka (exception) je definována jako událost, která nastane během provádění programu a která naruší normální běh instrukcí. Výjimka je vyvolána například
VíceKomponenty v.net. Obsah přednášky
doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Rozdíl mezi COM a.net Distribuce komponent Programování
VíceVývoj Internetových Aplikací
7 Vývoj Internetových Aplikací HTML 5 a CSS 3 Ing. Michal Radecký, Ph.D. www.cs.vsb.cz/radecky https://developer.mozilla.org/en- US/docs/Web/Guide/HTML/HTML5 http://htmlfiverocks.appspot.com/en/resources
Více1 - Úvod do platformy.net. IW5 - Programování v.net a C#
1 - Úvod do platformy.net IW5 - Programování v.net a C# Strana 1 Obsah přednášky Objektově orientované paradigma.net Framework Základní rysy jazyka C# Strana 2 Objektová orientace C# implementuje základní
VíceKMI / TMA Tvorba mobilních aplikací. 9. seminář ZS 2016/2017 Středa 13:15-15:45
KMI / TMA Tvorba mobilních aplikací 9. seminář 22.11.2016 ZS 2016/2017 Středa 13:15-15:45 OBSAH SEMINáře Fragmenty a to, co se nevlezlo jinam Větší Displeje je třeba něco dělat? většina aplikací, které
VíceAbstract Factory úvod
Abstract Factory Abstract Factory úvod Problém potřebujeme vytvářet objekty ze skupiny souvisejících tříd skupin je více, chceme je snadno vyměňovat můžeme používat (v jednom kontextu) pouze jednu skupinu
VícePříloha 6. Palety nástrojů
Příloha 6. Palety nástrojů Palety nástrojů v IDE poskytují zkrácení pro příkazy nabídky. Příkazy jsou rozděleny do několika palet nástrojů, které mohou být nezávisle přeskupeny nebo vloženy do plovoucích
VíceJazyk C# (seminář 6)
Jazyk C# (seminář 6) Pavel Procházka KMI 29. října 2014 Delegát motivace Delegáty a události Jak docílit v C# funkcionální práce s metodami v C je to pomocí pointerů na funkce. Proč to v C# nejde pomocí
VíceEmbedded vývoj v Clutteru a Mx
Pavel Šimerda pavlix@pavlix.net OpenMobility 2011 Creative Commons Uved te autora 3.0 Česko Embedded Oblíbený buzzword Vestavěná zařízení (v automobilech, budovách, venkovních terminálech) Jednoúčelová
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VícePříklad aplikace Klient/Server s Boss/Worker modelem (informativní)
Příklad aplikace Klient/Server s Boss/Worker modelem (informativní) Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze A0B36PR2 Programování 2 Jan Faigl, 2015 A0B36PR2
VíceWindows a real-time. Windows Embedded
Windows a real-time Windows Embedded Windows pro Embedded zařízení Současnost (2008): Windows Embedded WINDOWS EMBEDDED Windows Embedded CE Windows XP Embedded Windows Embedded for Point of Service Minulé
VíceObsah. O autorech 9 Earle Castledine 9 Myles Eftos 9 Max Wheeler 9 Odborný korektor 10. Předmluva 11 Komu je kniha určena 12 Co se v knize dočtete 12
O autorech 9 Earle Castledine 9 Myles Eftos 9 Max Wheeler 9 Odborný korektor 10 Předmluva 11 Komu je kniha určena 12 Co se v knize dočtete 12 Poděkování 15 Earle Castledine 15 Myles Eftos 15 Max Wheeler
Více1 2 3 4 5 6 součet cvičení celkem. známka. Úloha č.: max. bodů: skut. bodů:
Úloha č.: max. bodů: skut. bodů: 1 2 3 4 5 6 součet cvičení celkem 20 12 20 20 14 14 100 známka UPOZORNĚNÍ : a) Písemná zkouška obsahuje 6 úloh, jejichž řešení musí být vepsáno do připraveného formuláře.
Více1. Začínáme s FrontPage 2003 11
Úvod 9 1. Začínáme s FrontPage 2003 11 Instalace programu 12 Spuštění a ukončení programu 15 Základní ovládání 16 Hledání souborů 30 Najít a nahradit 31 Tisk 32 Schránka sady Office 34 Nápověda 36 Varianty
VíceKMI / TMA Tvorba mobilních aplikací
KMI / TMA Tvorba mobilních aplikací 5. seminář 17.10.2018 ZS 2018/2019 STŘEDA 13:15-15:45 OBSAH SEMINáře BARVY, GRAFIKA, STYLY/TÉMATA, ŘETĚZCE, TOOLBAR MENU BARVY DRY = Dont Repeat Yourself v souboru /res/values/colors.xml
VíceNávrhové vzory pro GUI
Návrhové vzory pro GUI RICHARD LIPKA 19. 3. 2018 Základní struktura GUI Vstup od uživatele Propojení s periferiemi Zpracování událostí Co se má stát po vstupu Spojení s jádrem programu Užitečná činnost
VícePočítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006
Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/04.0006 Lekce 1 Jazyk Java Tento projekt je spolufinancován Evropským sociálním fondem
VíceObsah. Úvod 11 O autorovi 11 Koncept knihy 11 Zpětná vazba od čtenářů 12 Zdrojové kódy ke knize 12 Errata 12 ČÁST I VÝVOJ MOBILNÍ APLIKACE
Úvod 11 O autorovi 11 Koncept knihy 11 Zpětná vazba od čtenářů 12 Zdrojové kódy ke knize 12 Errata 12 ČÁST I VÝVOJ MOBILNÍ APLIKACE KAPITOLA 1 Vývojové prostředí a výběr frameworku 15 PhoneGap 15 jquery
Více02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox
02. HODINA Obsah: 1. Typy souborů a objektů 2. Ovládací prvky Label a TextBox 3. Základní příkazy a vlastnosti ovládacích prvků 4. Práce s objekty (ovládací prvky a jejich vlastnosti) 2.1 Typy souborů
VíceZávěrečná práce. AutoCAD Inventor 2010. (Zadání D1)
Závěrečná práce AutoCAD Inventor 2010 (Zadání D1) Pavel Čurda 4.B 4.5. 2010 Úvod Tato práce obsahuje sestavu modelu, prezentaci a samotný výkres Pákového převodu na přiloženém CD. Pákový převod byl namalován
VíceRMI Remote Method Invocation
2. cvičení RMI Remote Method Invocation 2007/09 ver.2.0 1 RMI co to je? vyvolání metody z jiné JVM lokalizace vzdáleného objektu komunikace se vzdálenými objekty přenos objektu v bytecode typicky klient
VíceObsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13
Obsah Předmluva 11 O této knize 13 Konvence........................................................13 Inovace prostřednictvím otevřenosti 15 Ekosystém Symbianu.............................................16
VíceKód, který se nebude často měnit
Factory Method Úvod - problém Mějme obchod s auty: public class OrderCars { public Car ordercar(string model) { Car car; Při přidání nového modelu je nutné upravit if(model.equals("mark IV")) car = new
VíceÚvodem... 9 Kapitola 1 Karetních
Úvodem... 9 Základní znalosti o programovacích jazycích...10 Jazyk C# a platforma.net...10 Visual C# 2010 Express...11 Instalace platformy.net 4.0 a Visual C# 2010 Express...11 Zdrojový kód aplikací...12
VíceKOMPLEXNÍ VZDĚLÁVÁNÍ KATEDRA STROJNÍ SPŠSE a VOŠ LIBEREC
KOMPLEXNÍ VZDĚLÁVÁNÍ KATEDRA STROJNÍ SPŠSE a VOŠ LIBEREC CNC CAM CNC frézování Heidenhain Kapitola 1 - Základy ISO kódu, kompenzace rádiusu frézy a struktura zápisu NC kódu. Kapitola 2 - Seznámení s prostředím
VíceNSWI096 - INTERNET JavaScript
NSWI096 - INTERNET JavaScript Mgr. Petr Lasák JAVASCRIPT JAK SE DNES POUŽÍVÁ Skriptovací (interpretovaný) jazyk Umožňuje interaktivitu Použití: Dialogy Kontrola dat ve formulářích Změny v (X)HTML dokumentu
VíceObsah přednášky. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace UML. Co je diagram tříd. Ing. Ondřej Guth
Evropský sociální fond. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace Ing. Ondřej Guth Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze
VíceTÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 25. Otázka : Komponentní technologie - základní pojmy a principy, metody specifikace komponent. Obsah : 1. Základní pojmy 1.1 Komponenta Komponenta
VíceUdálosti. A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické
Události A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické Zpracování událostí - obsah 1. Připomenutí GUI 2. Co to je událost 3. Koncepce zpracování událostí 4. Zpracování vlastností
VíceNástroje na vývoj aplikací pro ios Trocha motivace na úvod Co budete potřebovat Co když nemáte k dispozici počítač s macos? Vývojové prostředí Xcode
KAPITOLA 1 Nástroje na vývoj aplikací pro ios 11 Trocha motivace na úvod 11 Co budete potřebovat 11 Co když nemáte k dispozici počítač s macos? 12 Vývojové prostředí Xcode 14 Průběžná aktualizace 16 První
VíceGUI. Systémová integrace pro desktopové aplikace
GUI Systémová integrace pro desktopové aplikace 1 java.awt.desktop systémová integrace desktopových aplikací static boolean isdesktopsupported() test zda je integrace k dispozici static Desktop getdesktop()
VíceJava - výjimky. private void vstup() throws IOException {... }
Java - výjimky Tato kapitola ukazuje na několika příkladech práci s výjimkami v Javě. Klíčové pojmy: Výjimka, hierarchie výjimek, zachytávání výjimek, blok try-catch, tvorba vlastních výjimek, propagace
Více