Java - Kresba. 2/28/11 1/8 Java - kresba
|
|
- Miroslava Říhová
- před 8 lety
- Počet zobrazení:
Transkript
1 Java - Kresba Základní entity a jejich kresba ve třídě Graphics nemůžeme nastavit linii, šířku a typ, z grafických atributů jí můžeme nastavit pouze barvu Linie (čára)... drawline(int x1, int y1, int x2, int y2)... vykreslí linii, jdoucí z počátečního bodu P1[x1, y1] do koncového bodu P2[x2, y2]. Eliptická výseč.... drawarc(int x, int y, int sirka, int vyska, int start_uhel, int konc_uhel). Souřadnice x, y představují levý horní roh obdélníku zadané šířky a délky, do kterého je výseč vepsána, jsou dány počáteční a koncový úhel ovlivňující délku oblouku. Elipsa... drawoval(int x, int y, int sirka, int vyska) slouží k vykreslení elipsy vepsané do obdélníku zadané šířky a délky, jsou dány souřadnice levého horního rohu obdélníka. Polygon... polygon představuje uzavřenou oblast definovanou lomovými body spojenými úsečkami. Lze ho nakreslit metodou drawpolygon(), která je přetížená. Existují dvě varianty: drawpolygon(int [x], int [y], int pocet_vrcholu) a drawpolygon(polygon p). V první je polygon defnován polem x-ových a y-ových souřadnic, druhý objektem typu polygon. Polyline (lomená čára)... drawpolyline( int [x], int [y], int pocet_vrcholu). Význam parametrů je stejný jako u polygonu. Obdélník... drawrect(int x, int y, int sirka, int vyska). Význam parametrů je stejný jako u elipsy. 3D obdélník... draw3drect(int x, int y, int sirka, int vyska, boolean stav) vytvoří plastický obdélník připomínající tlačítko. Tlačítko může být zamáčklé nebo nezamáčklé, rozhoduje o tom booleovská proměnná stav. Text... drawstring(string text, int x, int y) - text umístěný na specifické souřadnice. Vyplňování entit barvou Útvary jsou standardně vyplňovány stejnou barvou, jakou byly nakresleny. Připomeňme metody setcolor( Color c) a getcolor() pro nastavení a získání barvy. Pokud chceme vyplnit útvar jinou barvou, než je nakreslen jeho obrys, nastavíme barvu pro výplň a vyplníme útvar, změníme barvu vykreslíme obrys útvaru. Parametry metod jsou stejné jako v případě metod pro kresbu nevyplněných entit. Vyplněný 3D obdélník... fill3drect(int x, int y, int sirka, int vyska, boolean stav). Vyplněná eliptická výseč... fillarc(int x, int y, int sirka, int vyska, int start_uhel, int konc_uhel) Vyplněná elipsa... filloval(int x, int y, int sirka, int vyska) Vyplněný polygon... fillpolygon(int [x], int [y], int pocet_vrcholu) nebo fillpolygon(polygon p). Grafický kontext poskytuje uživatelský souřadnicový systém a vše, co potřebujeme ke kreslení čehokoliv na komponentě grafický kontext = instance třídy Graphics (awt) nebo jeho potomka Graphics2D (swing) Graphics i Graphics2D jsou abstraktní třídy grafický kontext je vždy získán pro použití s konkrétní komponentou instance třídy Graphics2D se stará o mapování uživatelských souřadnic na souřadnice strojové, zahrnuje informaci o stroji, který je cílem výstupu odkaz na grafický kontext musíme mít předtím, než v něm začneme kreslit odkaz na grafický kontext můžeme vždy získat také pomocí metody getgraphics() 2/28/11 1/8 Java - kresba
2 Kreslení naše kreslící třída bude: potomkem třídy JComponent bude obsahovat metodu paint() nebo nověji paintcomponent(), pomocí těchto metod kreslíme grafický kontext je předán metodě paintcomponent() grafickému kontextu Graphics můžeme nastavit vlastnosti: barva... g.setcolor(color barva) typ písma... g.setfont(new Font("SansSerif",Font.ITALIC+Font.BOLD,20)); příklad 1a - Graphics: public class KresbaObrazce extends JComponent { public void paintcomponent(graphics g) { g.setcolor(color.blue); g.fillrect(40,50,300,200); g.setcolor(color.yellow); g.setfont(new Font("SansSerif",Font.ITALIC+Font.BOLD,20)); g.drawstring("ahoj",160,160); grafickému kontextu Graphics2D můžeme nastavit vlastnosti: paint = kresba = barva... g2d.setpaint() stroke = tah = styl čáry font = písmo transform = transformace clip = oříznutí composite = kompozice = jak budou kresleny překrývající se tvary můžeme použít metody pro kreslení: draw(shape tvar) fill(shape tvar) drawstring(string text) drawimage() metody pro překreslování paint() nebo nověji paintcomponent()... volána vždy, když má být komponenta rekonstruována, způsobí překreslení celé komponenty repaint()... způsobí překreslení celé komponenty voláním metody paint() je přetížená jako parametr můžeme použít časový limit a oblast, která má být překreslena příklad 1b - Graphics2D: public class KresbaObrazce extends JComponent { public void paintcomponent(graphics g) { super.paintcomponent(g); Graphics2D g2d = (Graphics2D)g; // musíme přetypovat g2d.setpaint(color.red); g2d.draw(new Rectangle(100,100,200,200)); g2d.setpaint(color.green); int[] x = {10, 240, 150; int[] y = {30, 100, 310; g2d.draw(new Polygon(x,y,3)); 2/28/11 2/8 Java - kresba
3 Instanci třídy Kresba obrazce pak použijeme v hlavním okně GUI: public class Platno extends JFrame { private Container obsah; private JPanel po; private KresbaObrazce ko; public Platno() { inicializace(); obsah(); zviditelneni(); public void inicializace() { this.setsize(400,400); this.settitle("kreslící plátno"); obsah = this.getcontentpane(); obsah.setlayout(new BorderLayout()); public void obsah() { po = new JPanel(); po.setbackground(color.white); po.setlayout(new BorderLayout()); obsah.add(po, BorderLayout.CENTER); ko = new KresbaObrazce(); po.add(ko); public void zviditelneni () { this.setdefaultcloseoperation(dispose_on_close); this.setvisible(true); 2/28/11 3/8 Java - kresba
4 Příklad 2: Přidáme si panel s možností volby obrazce a budeme reagovat na stisk odpovídajícího tlačítka: public class Platno extends JFrame { private int sirka, vyska; private Container obsah; private JButton[] co = new JButton[3]; private JPanel pb, po; private KresbaObrazce ko; public Platno(int sirka, int vyska) { this.sirka = sirka; this.vyska = vyska; inicializace(); obsah(); zviditelneni(); public void inicializace() { this.setsize(sirka,vyska); this.settitle("plátno"); obsah = this.getcontentpane(); obsah.setlayout(new BorderLayout()); public void obsah() { pb = new JPanel(); this.getcontentpane().add(pb, BorderLayout.NORTH); co[0] = new JButton("nakresli kruh"); co[1] = new JButton("nakresli obdélník"); co[2] = new JButton("napis text"); for (int i=0; i<3; i++) { pb.add(co[i]); co[i].addactionlistener(new Kresba(i)); po = new JPanel(); po.setbackground(color.white); po.setlayout(new BorderLayout()); this.getcontentpane().add(po, BorderLayout.CENTER); ko = new KresbaObrazce(-1); po.add(ko); /* handler = zobrazí odpovídající obrazec */ class Kresba implements ActionListener { int druh; public Kresba(int druh) { this.druh = druh; public void actionperformed(actionevent e) { kresli(e, druh); public void kresli(actionevent e, int druh) { ko.setobrazec(druh); po.repaint(); public void zviditelneni () { this.setdefaultcloseoperation(dispose_on_close); this.setvisible(true); 2/28/11 4/8 Java - kresba
5 public class KresbaObrazce extends JComponent { private int druh; public KresbaObrazce(int druh) { this.druh=druh; public void setobrazec(int druh) { this.druh=druh; public void paintcomponent(graphics g) { switch (druh) { case -1: System.out.println("začátek"); break; case 0: g.setcolor(color.red); g.drawoval(40,40,100,100); break; case 1: g.setcolor(color.blue); g.drawrect(100,200,120,60); break; case 2: g.setcolor(color.green); g.setfont(new Font("SansSerif",Font.ITALIC+Font.BOLD,20)); g.drawstring("ahoj",160,160); break; 2/28/11 5/8 Java - kresba
6 Příklad 3: Vybudujeme vlastní garfické komponenty: public class Bod { private int x,y; public Bod(int x, int y) { this.x=x; this.y=y; int getx() { return x; int gety() { return y; public class Kruh { private int polomer; private Bod stred; public Kruh(Bod stred, int polomer) { this.stred = stred; this.polomer=polomer; public Bod getstred() { return this.stred; public int getpolomer() { return this.polomer; import java.util.*; public class GenerujKruh { int sirka, vyska; int x, y, polomer; private Kruh k; Random rnd; public GenerujKruh(int sirka, int vyska) { this.sirka = sirka; this.vyska = vyska; rnd = new Random(); polomer = rnd.nextint(sirka/6)+3; x = rnd.nextint(sirka-2*polomer) + polomer; y = rnd.nextint(vyska-2*polomer) + polomer; k = new Kruh(new Bod(x, y), polomer); Kruh getkruh() { return k; import java.awt.*; import javax.swing.jcomponent; 2/28/11 6/8 Java - kresba
7 public class KresbaKruhu extends JComponent { private GenerujKruh kr; private int sirka, vyska; private Kruh k; boolean kreslit; public KresbaKruhu() { kreslit = false; public void setkruh() { sirka = this.getwidth(); vyska = this.getheight(); kr = new GenerujKruh(sirka, vyska); k = kr.getkruh(); kreslit = true; repaint(); public void paintcomponent(graphics g) { if (kreslit) { g.setcolor(color.red); int x = k.getstred().getx() - k.getpolomer(); int y = k.getstred().gety() - k.getpolomer(); g.drawoval(x, y, 2*k.getPolomer(), 2*k.getPolomer()); public class Platno extends JFrame { private int sirka, vyska; private JButton tlac; private JPanel pb, po; private KresbaKruhu kk; public Platno(int sirka, int vyska) { this.sirka = sirka; this.vyska = vyska; inicializace(); obsah(); public void inicializace() { this.setsize(sirka,vyska); this.settitle("kružnice"); this.setdefaultcloseoperation(dispose_on_close); this.setlayout(new BorderLayout()); public void obsah() { pb = new JPanel(); this.getcontentpane().add(pb, BorderLayout.NORTH); tlac = new JButton("generuj kruh"); pb.add(tlac); tlac.addactionlistener(new Kresba()); po = new JPanel(); po.setbackground(color.white); po.setlayout(new BorderLayout()); this.getcontentpane().add(po, BorderLayout.CENTER); kk = new KresbaKruhu(); po.add(kk); 2/28/11 7/8 Java - kresba
8 /* handler = zobrazí odpovídající obrazec */ class Kresba implements ActionListener { public void actionperformed(actionevent e) { kresli(e); public void kresli(actionevent e) { kk.setkruh(); public static void main (String[] args) { Platno p = new Platno(500,700); p.setvisible(true); 2/28/11 8/8 Java - kresba
2 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íceZákladní grafika. Princip zobrazování obsahu. Grafický kontext. Zobrazovací metody. Přednáška 3
Přednáška 3 Princip zobrazování obsahu Základní grafika Překreslení (vykreslení) obsahu komponenty se realizuje při příchodu zprávy paint Standardně se o zobrazení stará samostatné vlákno Principiálně
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í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í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í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í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í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íceÚloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy
Úloha 1 Úloha 2 Otázka se týká předchozího kódu. Určete pravdivost následujícího tvrzení: "Pro každý bod vytvoří úsečku mezi ním a středem panelu." Úloha 3 Otázka se týká předchozího kódu. Určete pravdivost
VícePostřehová hra. Zadání projektu. 1 Moje cíle
Gymnázium, Praha 6, Arabská 16 předmět Programování, vyučující Tomáš Obdržálek Postřehová hra ročníkový projekt Matouš Jokl, 1E květen 2014 Obsah 1 Moje cíle...1 2 Kód...2 1.Objekty a ArrayList...2 2.Jpanel
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í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íceGrafické uživatelské rozhraní v Javě. A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické
Grafické uživatelské rozhraní v Javě A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické Grafický návrh - příklad určíme základní rozvržení určíme chování okna při zvětšování
VícePráce se soubory v Javě
Práce se soubory v Javě Cílem kapitoly je naučit pracovat se soubory a adresáři v Javě. Na jednoduchých příkladech ukázat procházení adresáře, čtení z textového souboru a zápis do textového souboru. Klíčové
VíceGrafické uživatelské rozhraní v Javě. A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické
Grafické uživatelské rozhraní v Javě A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické Grafický návrh - příklad ToolBar Menu soubor nový, otevřít, uložit, exportovat, konec...
VíceProjekty pro výuku programování v jazyce Java
JIHOČESKÁ UNIVERZITA V ČESKÝCH BUDĚJOVICÍCH Pedagogická fakulta Katedra informatiky Akademický rok: 2006/2007 TEZE BAKALÁŘSKÉ PRÁCE Projekty pro výuku programování v jazyce Java Jméno: František Přinosil
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íce20. Projekt Domácí mediotéka
Projekt Domácí mediotéka strana 211 20. Projekt Domácí mediotéka 20.1. Základní popis, zadání úkolu V projektu Domácí mediotéka (Dome) se jednoduchým způsobem evidují CD a videa. Projekt je velmi jednoduchý
VíceProgramování v Javě I. Únor 2009
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory
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ícePrincipy objektově orientovaného programování
Principy objektově orientovaného programování Třídy a objekty 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 C E T
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íceProgramování v Javě I. Leden 2008
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory
Více7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd Algoritmizace (Y36ALG), Šumperk - 7. přednáška 1 Třída jako zdroj funkcionality Třída v jazyku Java je programová jednotka tvořená
VíceProjekt Obrázek strana 135
Projekt Obrázek strana 135 14. Projekt Obrázek 14.1. Základní popis, zadání úkolu Pracujeme na projektu Obrázek, který je ke stažení na http://java.vse.cz/. Po otevření v BlueJ vytvoříme instanci třídy
Víceaktivita, kdy sami chceme vykreslit nějaký grafický obrazec (úsečku, kružnici, atd.) nebo vypsat text
Kapitola 1. Grafika Základní charakteristika našeho snažení: aktivita, kdy sami chceme vykreslit nějaký grafický obrazec (úsečku, kružnici, atd.) nebo vypsat text nejedná se o vykreslování jednotlivých
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íceJava testovací třída
Java testovací třída Kapitola má seznámit s možnostmi testovací třídy. Zdroje: http://voho.cz/wiki/informatika/vyvoj/testovani/, Ing. Vojtěch HORDĚJČUK: Testování, 15.3.2013 Rudolf Pecinovský: Java 7,
VícePokročilé programování v jazyce C pro chemiky (C3220) Dědičnost tříd v C++
Pokročilé programování v jazyce C pro chemiky (C3220) Dědičnost tříd v C++ Dědičnost tříd Dědičnost umožňuje vytvářet nové třídy z tříd existujících tak, že odvozené třídy (tzv. potomci) dědí vlastnosti
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íceKreslíme do webu. Canvas
Kreslíme do webu Canvas Počítačová grafika Bitmapy vs Vektory Bitmapy: - obraz je složen z bodů (pixelů), které mají definované vlastnosti Vektory: - obraz je složen z grafických prvků (primitiv), které
VíceUNIVERZITA PARDUBICE
UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Uživatelský manuál: Korporátní publikační systém se zaměřením na správu, výrobu a distribuci reklamních tiskovin Vojtěch Pešl Uživatelský manuál
VíceGUI v Javě. Jiří Vokřínek. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze. Přednáška 5 B0B36PJV Programování v JAVA
GUI v Javě Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 5 B0B36PJV Programování v JAVA Jan Faigl, Jiří Vokřínek, 2017 B0B36PJV Přednáška 5: GUI
VíceDědičnost. seskupování tříd do hierarchie. potomek získá všechny vlastnosti a metody. provádí se pomocí dvojtečky za názvem třídy.
3. ročník Dědičnost seskupování tříd do hierarchie nadtyp-podtyp potomek získá všechny vlastnosti a metody kromě označených jako private provádí se pomocí dvojtečky za názvem třídy Polymorfismus všude
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í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íceGUI v Javě. GUI v Javě GUI komponenty a kontejnery Dialogová okna Události a obsluha událostí z GUI
GUI v Javě GUI v Javě Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 5 B0B36PJV Programování v JAVA GUI v Javě GUI komponenty a kontejnery Dialogová
VíceCvičení 7: Delphi objekty CheckedBox, Radio- Button, EditBox
Cvičení 7: Delphi objekty CheckedBox, Radio- Button, EditBox 1 Opakování kreslení do Image 1. Canvas = plátno - Color, Caption Nastavení typu čáry pro kreslení perem Pen: barva Image1.Canvas.Pen.Color
Více14.4.1. Typický prvek kolekce pro české řazení
14.4. Co všechno by měl mít typický prvek kolekce 177 Poznámka: Třídy BigInteger, BigDecimal a Date budou vysvětleny v částech [15./183, [16./185 a [18.1./204. 14.4.1. Typický prvek kolekce pro české řazení
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íceVÝUKA PČ NA 2. STUPNI základy technického modelování. Kreslící a modelovací nástroje objekty, čáry
VÝUKA PČ NA 2. STUPNI základy technického modelování Kreslící a modelovací nástroje objekty, čáry Název šablony: III/2-9, Výuka PČ na 2. stupni základy technického modelování Číslo a název projektu: CZ.1.07/1.4.00/21.3443,
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 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í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íceVytváření a použití knihoven tříd
Vytváření a použití knihoven tříd 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 Prostory jmen motivace spolupráce
VíceAplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ]
Aplikované úlohy Solid Edge SPŠSE a VOŠ Liberec Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ] 1 CÍL KAPITOLY V této kapitole si představíme Nástroje kreslení pro tvorbu 2D skic v modulu Objemová součást
VíceTřída DrawingTool. Obrázek 1: Prázdné okno připravené pro kreslení
Třída DrawingTool strana 1 1. Základ Třída DrawingTool Třída DrawingTool je určena k jednoduchému kreslení pomocí několika základních příkazů do grafického okna zadaných rozměrů (nastavení v konstruktoru),
VíceProgramování v C++ 1, 6. cvičení
Programování v C++ 1, 6. cvičení dědičnost, polymorfismus 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 2 3 Shrnutí minule procvičené
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íceVIII. Seminář Java VIII p.1/36
Seminář Java VIII Seminář Java VIII p1/36 Rekapitulace Grafické uživatelské rozhraní Swing vs AWT Aplety Aplikační rámec, JApplet spouštení v prohlížeči, Appletviewer Událostní model knihovny Swing události
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íceJava - řazení objektů
Java - řazení objektů Kapitola seznamuje se základními principy řazení objektů Klíčové pojmy: Přirozené řazení, absolutní řazení, ideální porovnávatelná třída ŘAZENÍ OBJEKTŮ U objektů není příliš jasné,
VíceJazyk C# (seminář 3)
Jazyk C# (seminář 3) Pavel Procházka KMI October 8, 2014 Motivace Největší využití v programování okenních aplikací a GUI knihoven. Data reprezentujeme pomocí objektů (tříd), máme tedy ucelený pohled na
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íceČást I Příklad - Generické typy, iterátor
Část 1 Příklad - Generické typy, iterátor GUI v Javě Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 3 A0B36PR2 Programování 2 Generické typy Příklad
VíceGUI v Javě. Jan Faigl. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze. Přednáška 3 A0B36PR2 Programování 2
GUI v Javě Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 3 A0B36PR2 Programování 2 Jan Faigl, 2016 A0B36PR2 Přednáška 3: GUI v Javě 1 / 56 Část 1 Příklad
VíceSeminář Java II p.1/43
Seminář Java II Seminář Java II p.1/43 Rekapitulace Java je case sensitive Zdrojový kód (soubor.java) obsahuje jednu veřejnou třídu Třídy jsou organizovány do balíků Hierarchie balíků odpovídá hierarchii
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íceJazyk C# (seminář 7)
Jazyk C# (seminář 7) Pavel Procházka KMI 5. listopadu 2014 WindowsForms basics Windows forms je abstrakce nad WinApi napsaném v C Hello world aplikace ve WinAPI má 114! řádků podle http: //msdn.microsoft.com/cs-cz/library/bb384843.aspx
Více11. Dědičnost. Dědičnost strana 103
Dědičnost strana 103 11. Dědičnost V této kapitole si vysvětlíme jeden ze základních pojmů objektově orientovaného programování dědičnost (inheritance). S ní souvisejí i následující témata: předek a potomek
VíceProgramování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 5: Náhoda Původ a význam Gaussova rozdělení MATEMATIKA O pravděpodobnostech při hodu jednou kostkou
VíceJSR 184 - tutorial 1 Úvod do JSR-184
JSR 184 - tutorial 1 Úvod do JSR-184 Cíl tutorialu: - naučit vás načíst *.m3g soubor, vybrat z něho 1 objekt a vykreslit scénu Tak jdeme na to: Nejdříve si samozřejmě vytvoříme nový projekt. Já ho nazval
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í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íce8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod 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 třídám a objektům, instančním
VíceGUI v Javě. Jan Faigl. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze. Přednáška 3 A0B36PR2 Programování 2
GUI v Javě Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 3 A0B36PR2 Programování 2 Jan Faigl, 2016 A0B36PR2 Přednáška 3: GUI v Javě 1 / 56 Část 1 Příklad
Více5 Rekurze a zásobník. Rekurzivní volání metody
5 Rekurze a zásobník Při volání metody z metody main() se do zásobníku uloží aktivační záznam obsahující - parametry - návratovou adresu, tedy adresu, kde bude program pokračovat v metodě main () po skončení
VíceVýčtový typ strana 67
Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce
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íceOMO. 4 - Creational design patterns A. Singleton Simple Factory Factory Method Abstract Factory Prototype Builder IoC
OMO 4 - Creational design patterns A Singleton Simple Factory Factory Method Abstract Factory Prototype Builder IoC Ing. David Kadleček, PhD. kadlecd@fel.cvut.cz, david.kadlecek@cz.ibm.com 1 Creational
VíceAbstraktní datové typy: zásobník
Abstraktní datové typy: zásobník 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 Abstraktní datové typy omezené rozhraní
VíceČást I Příklad - Generické typy, iterátor
Část 1 Příklad - Generické typy, iterátor Část 2 Jan Faigl Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 3 A0B36PR2 Programování 2 Generické typy Příklad - Spojový
VícePokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++
Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++ Třídy v C++ Třídy jsou uživatelsky definované typy podobné strukturám v C, kromě datových položek (proměnných) však mohou obsahovat i funkce
VíceÚvod do programování - Java. Cvičení č.4
Úvod do programování - Java Cvičení č.4 1 Sekvence (posloupnost) Sekvence je tvořena posloupností jednoho nebo více příkazů, které se provádějí v pevně daném pořadí. Příkaz se začne provádět až po ukončení
VíceGUI v Javě. Jiří Vokřínek. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze. Přednáška 5 B0B36PJV Programování v JAVA
GUI v Javě Jiří Vokřínek Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Přednáška 5 B0B36PJV Programování v JAVA Jan Faigl, Jiří Vokřínek, 2017 B0B36PJV Přednáška 5: GUI
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íceProgramování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 8: Analytická geometrie Polární souřadnice, kružnice, elipsa, spirála MATEMATIKA Pro úlohy aplikované
VíceSeznámení s AWT: práce s okny, grafikou a textem
Seznámení s AWT: S knihovnou Abstract Window Toolkit (AWT) jsme se seznámili již v kapitole 22, v níž jsme ji využili v kódu několika ukázkových apletů. Tato kapitola je věnována jejímu podrobnému popisu.
VíceIII/2 Inovace a zkvalitnění výuky prostřednictvím ICT
Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň
VíceOOPR_05. Případové studie
OOPR_05 Případové studie 1 Přehled probírané látky příklad skládání objektů - čára příklad skládání objektů kompozice a agregace přetížené konstruktory pole jako datový atribut 2 Grafický objekt - čára
VícePopis základního prostředí programu AutoCAD
Popis základního prostředí programu AutoCAD Popis základního prostředí programu AutoCAD CÍL KAPITOLY: CO POTŘEBUJETE ZNÁT, NEŽ ZAČNETE PRACOVAT Vysvětlení základních pojmů: Okno programu AutoCAD Roletová
VícePokud zadání nerozumíte nebo se vám zdá nejednoznačné, zeptejte se. Pište čitelně, nečitelná řešení nebudeme uznávat.
Pokud zadání nerozumíte nebo se vám zdá nejednoznačné, zeptejte se. Pište čitelně, nečitelná řešení nebudeme uznávat. 1. Odkrokujte následující program a s použitím notace z přednášky popište stav paměti
VíceVektorová grafika. Návod do cvičení z Informatiky pro ekonomy I
1 Práce ve vektorovém editoru 1.1 Principy vektorového obrazu Vektorová grafika Návod do cvičení z Informatiky pro ekonomy I Vektorový obraz je reprezentován pomocí geometrických prvků (úsečky, křivky,
VíceKnihovna CanvasLib TXV 003 89 první vydání prosinec 2014 změny vyhrazeny
Knihovna CanvasLib TXV 003 89 první vydání prosinec 2014 změny vyhrazeny 1 TXV 003 89.01 Historie změn Datum Vydání Popis změn Prosinec 2014 1 První vydání, popis odpovídá CanvasLib_v16 2 TXV 003 89.01
VíceTřídy, polymorfismus. A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické
Třídy, polymorfismus A0B36PR2-Programování 2 Fakulta elektrotechnická České vysoké učení technické Polymorfizmus ~ vícetvarost Polymorfizmus základní vlastnost objektového přístupu základní princip polymorfismu:
VíceProgramování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 12: Algebra Lineární transformace MATEMATIKA Lineární transformace, neboli přeet hodnoty x podle
VíceTeoretické minimum z PJV
Teoretické minimum z PJV Pozn.: následující text popisuje vlastnosti jazyka Java zjednodušeně pouze pro potřeby výuky. Třída Zavádí se v programu deklarací třídy což je část programu od klíčových slov
Více15. Projekt Kalkulačka
Projekt Kalkulačka strana 143 15. Projekt Kalkulačka 15.1. Základní popis, zadání úkolu Pracujeme na projektu Kalkulačka, který je ke stažení na java.vse.cz. Po otevření v BlueJ vytvoříme instanci třídy
VíceSMART Notebook verze Aug
SMART Notebook verze 10.6.219.2 Aug 5 2010 Pořadové číslo projektu CZ.1.07/1.4.00/21.3007 Šablona č.: III/2 Datum vytvoření: 11.10.2012 Pro ročník: 7. Vzdělávací obor předmět: Informatika Klíčová slova:
VíceCORELDRAW SEZNÁMENÍ S PROGRAMEM. Lenka Bednaříková
CORELDRAW SEZNÁMENÍ S PROGRAMEM Lenka Bednaříková SEZNÁMENÍ S OKNEM APLIKACE Panel nabídek Panel nástrojů Panel vlastností Ukotvitelné panely Okno nástrojů Paleta barev Okno kresby Pravítko Stavový řádek
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íceTřídy a dědičnost. A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické
Třídy a dědičnost A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické Dnešní témata Dědičnost Kompozice Typ String Třídy a dědičnost Dopravní prostředek Vzdušný Pozemní Vodní
VíceVývoj desktopových aplikací v Jazyce Java s bohatým grafickým uživatelským rozhraním.
Vývoj desktopových aplikací v Jazyce Java s bohatým grafickým uživatelským rozhraním. Bakalářská práce autor: Petr Bálek Vedoucí práce: RNDr. Jaroslav Icha Jihočeská univerzita v Českých Budějovicích Pedagogická
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í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íceProgramování v jazyku C# II. 4.kapitola
Programování v jazyku C# II. 4.kapitola Obsah GDI + Vlastní kontrolky 2/37 GDI+ Graphics Device Interface Služba Windows framework poskytuje obalující třídy Umožňuje programování 2D grafiky bez znalosti
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íce1. Téma 12 - Textové soubory a výjimky
1. Téma 12 - Textové soubory a výjimky Cíl látky Procvičit práci se soubory s využitím výjimek. 1.1. Úvod Program, aby byl programem, my mít nějaké výstupy a vstupy. Velmi častým případem je to, že se
Více