Grafické rozhraní. Grafické rozhraní. Základní pravidla pro návrh GUI. Princip GUI aplikace. Úvod do tvorby GUI aplikací.
|
|
- Zdeněk Říha
- před 7 lety
- Počet zobrazení:
Transkript
1 Přednáška 2 Grafické rozhraní Grafické rozhraní GUI (Graphics User Interface) nezávislé na zařízení nezávislé na OS (s ohledem na multiplatformnost progr. j. Java) Komponenty (vizuální i nevizuální) 2 rozhraní AWT (Abstract Window Toolkit) Úvod do tvorby GUI aplikací malá rychlost komponenty závislé na prostředí JFC (Java Foundation Class) Java Beans (nevizuální komponenty) Swing (vizuální komponenty) To nás bude zajímat 1 Přednáška 2 2 Princip GUI aplikace Komponenty Komunikace mezi komponentami Událostmi řízené programování Události Smyčka obsluhující frontu zpráv (událostí, většinou vyvolaných zásahem uživatele) Obslužné kódy událostí (handlery) Problematika vláken a vícevláknových aplikací Asynchronní programování, lze použít i obecně (ne jen pro GUI aplikace) Základní pravidla pro návrh GUI Intuitivní ovládání Dodržování běžných zvyklostí uživatelů dle povahy aplikace dle zkušenosti uživatele dle zvyklostí v jednotlivých OS Prostředí se přizpůsobuje uživateli (ne naopak) Jednotný vzhled aplikací v balíku Použití vhodných rozvržení Jednoduše, přehledně, efektivně, střídmě (barvy, fonty, rozměry) Uživatel musí mít stále přehled, kde se nachází (u více otevřených formulářů) Často je hodnocení aplikace založeno (nesprávně) jen na kvalitě vzhledu Přednáška 2 3 Přednáška 2 4
2 Základní komponenty Hierarchie komponent v aplikaci java.awt.container javax.swing.jcomponent Většina používaných komponent Top-Level componenty (JFrame, JDialog) Kontejnerové komponenty (JPanel, JScrollPane, JToolbar, JSplitPane, ) Základní komponenty (listy) Swing Controls (JButton, JLabel, JRadioButton, JCheckBox, JTextArea, JTextField, JScrollBar, JComboBox, JMenu, JList, JProgressBar ) Interaktivní (editovatelné) komponenty Informativní (needitovatelné) komponenty Přednáška 2 5 Přednáška 2 6 Vzhled komponent Zobrazení okna statická třída UIManager UIManager.setLookAndFeel (UIManager.getSystemLookAndFeelClassName()); UIManager.setLookAndFeel (UIManager.getCrossPlatformLookAndFeelClassName()); Použití před zobrazením formuláře import java.awt.flowlayout; import javax.swing.jbutton; import javax.swing.jframe; public class MainFrame extends JFrame { JButton btn1, btn2; MainFrame () { settitle("příklad zobrazení okna"); setlayout(new FlowLayout()); btn1 = new JButton("Tlačítko 1"); add(btn1); btn2 = new JButton("Tlačítko 2"); add(btn2); Poznámky: Nastavení zobrazení může být v konstruktoru Aplikace funguje, ale nic nedělá Na rozmístění tlačítek má vliv použitý Layout Bez Layoutu bude druhé tlačítko přes celé okno setsize(300,100); public static void main (String[] args) { new MainFrame().setVisible(true); Komponenty lze přidávat i pomocí getcontentpane().add(button1); Možnost přizpůsobení velikosti okna obsahu pomocí pack(); Přednáška 2 7 Přednáška 2 8
3 Reakce na událost public class MainFrame extends JFrame { JButton btnpocitadlo; JLabel jlabelpocetstisknuti; static int pocitadlo = 0; MainFrame () { btnpocitadlo = new JButton("Zvyš stav počítadla"); add(btnpocitadlo); jlabelpocetstisknuti = new JLabel("Stav počítadla: 0"); btnpocitadlo.add(new () { public void (ActionEvent e) { buttonpocitadloactionperformed(e); ); add(jlabelpocetstisknuti); Princip fungování konceptu událostí Události vytváří (vysílá) uživatel (prostřednictvím ovládací komponenty) program systém Z hlediska programování je to objekt Jiný objekt je zachycuje (posluchač, listener) Zachycovat může pouze objekt s implementovaným rozhraním Listener, kterého si vysílající objekt zaregistruje private void buttonpocitadloactionperformed(actionevent e) { pocitadlo++; jlabelpocetstisknuti.settext("stav počítadla: " + pocitadlo); Přednáška 2 9 Přednáška 2 10 Jiný způsob implementace rozhraní Události, rozhraní a metody (1) public class MainFrame extends JFrame implements { JButton btnpocitadlo; JLabel jlabelpocetstisknuti; static int pocitadlo = 0; MainFrame () {... btnpocitadlo = new JButton("Zvyš stav počítadla"); btnpocitadlo.add(this); add(btnpocitadlo); jlabelpocetstisknuti = new JLabel("Stav počítadla: 0"); add(jlabelpocetstisknuti);. public void (ActionEvent e) { pocitadlo++; jlabelpocetstisknuti.settext("stav počítadla: " + pocitadlo); Implicitní akce Událost ActionEvent Rozhraní () Změna stavu komponenty Událost ComponentEvent Rozhraní ComponentListener componenthidden() componentmoved() componentresized() componentshown() Změna zaměření komponenty Událost FocusEvent Rozhraní FocusListener focusgained() focuslost() Změna stavu okna Událost WindowEvent Rozhraní WindowListener windowactivated() windowclosed() windowclosing() windowdeactivated() windowopened() Změna zaměření okna Událost WindowFocusEvent Rozhraní WindowFocusListener windowfocusgained() windowfocuslost() Přednáška 2 11 Přednáška 2 12
4 Události, rozhraní a metody (2) Ukončení programu 1 Práce s klávesnicí Událost KeyEvent Rozhraní KeyListener keypressed() keyreleased() keytyped() Práce s tlačítky myši Událost MouseEvent Rozhraní MouseListener mouseclicked() mouseentered() mouseexited() mousepressed() mousereleased() Pohyb myši Událost MouseMotionEvent Rozhraní MouseMotionListener mousemotiondragged() mousemotionmoved() Práce s rolovacím kolečkem myši Událost MouseWheelEvent Rozhraní MouseWheelListener mousewheelmoved() btnkonec = new JButton("Konec"); btnkonec.add((){ public void (ActionEvent e) { buttonkonecactionperformed(e); ); private void buttonkonecactionperformed(actionevent e) { if (JOptionPane.showConfirmDialog(this, "Zprava", "Dotaz", 0)==0) dispose(); Poznámky: dispose() skryje okno a uvolní jeho zdroje, funguje pro hlavní a jediné okno aplikace System.exit(0); //správné řešení Přednáška 2 13 Přednáška 2 14 Ukončení programu 2 Fokus a viditelnost Použití Adaptéru pro zaregistrování posluchače není potřeba implementovat všechny metody rozhraní adaptér je již obsahuje, mají prázdné tělo implementuje se pouze požadovaná metoda addwindowlistener(new WindowAdapter() { public void windowclosing (WindowEvent e) { System.exit(0); ); Klasické chování okna zjistí v konstruktoru setdefaultcloseoperation(exit_on_close); nebo v návrháři nastavení vlastnosti DefaultCloseOperation. setvisible (boolean b) po vytvoření okna pro komponenty se o viditelnost stará rodičovská komponenta (kontejner) boolean isvisible () setenabled (boolean b) boolean isenabled () Fokus vlastnost komponenty přijímat vstup od uživatele aktivní komponenta void requestfocus() chování závisí na prostředí OS boolean requestfocusinwindow() boolean isfocusowner() Přednáška 2 15 Přednáška 2 16
5 Metrika komponent Udávána v pixelech Souřadnice levého horního rohu = [0, 0] [0, 0] [width-1, height-1] x height Rozložení komponent layout manager Správce umístění stará se o rozmístění komponent na rodičovském kontejneru Poloha: Point (int x, int y) setlocation(point p); setlocation(int x, int y); Velikost: Dimension (int width, int heigh) setsize (Dimension d); setsize (int width, int height); Pravoúhlá oblast: Rectangle (int x, int y, int width, int height) SetBounds (Rectangle r); SetBounds (int x, int y, int width, int height); y width java.awt.layoutmanager FloatLayout GridLayout BorderLayout GridBagLayout CardLayout GroupLayout (Free Design) Přednáška 2 17 Přednáška 2 18 Layout manager GroupLayout Nastavení zvoleného rozložení z prostředí Využívání při návrhu z IDE inteligentní zarovnávání přichytávání možnost nastavení škálovatelných komponent kódem setlayout(new BorderLayout()); add(new Button ("OK"), BorderLayout.CENTER); add(new Button ("1"), BorderLayout.WEST; add(new Button ("2"), BorderLayout.EAST); setlayout (new FlowLayout(FlowLayout.CENTER, 5, 5)); setlayout (new FlowLayout()); Přednáška 2 19 Přednáška 2 20
6 Prostředí NetBeans Přehled společných vlastností komponent Color background, Color foreground Font font String text float alignmentx, float alignmenty int verticalalignment, int horizontalalignment Point location int x, int y Size size int width, int height boolean enabled boolean visible String name... Přednáška 2 21 Přednáška 2 22 JLabel JButton Komponenta pro statické zobrazení textu a/nebo obrázku (ikony) Možnost zarovnání: LEFT, RIGHT, CENTER, LEADING, TRAILING Nastavení barvy pozadí (background) a textu (foreground) Konstruktory JLabel () JLabel (String text); JLabel (String text, int alignment); JLabel (Icon i); JLabel (Icon i, int alignment); JLabel (String text, Icon i, int alignment); Metody Nejpoužívanější komponenta, běžně pro spouštění akcí Označení textem a/nebo obrázku, možnost zarovnání, nastavení barvy, ohraničení (border) JButton (String text); JButton (Icon i); JButton (String text, Icon i); int getverticalalignment (); setverticalalignment (int alignment); int getverticalalignment (); setverticalalignment (int alignment); int gethorizontalalignment (); sethorizontalalignment (int alignment); Vybrené rozhraní a metody ItemListener itemstatechanged() Přednáška 2 23 Přednáška 2 24
7 JCheckBox Zaškrtávací pole, logická vlastnost selected (true/false), Označení textem a/nebo obrázku, možnost zarovnání, nastavení barvy, ohraničení (border) JRadioButton Přepínač, obdoba checkboxu, logická vlastnost selected (true/false), Může fungovat samostatně nebo ve skupině (pouze jeden přepínač ve skupině může být zaškrtnutý) JCheckBox (String text); JCheckBox (String text, boolean selected); + varianty s Icon JRadioButton (String text); JRadioButton (String text, boolean selected); + varianty s Icon boolean isselected (); setselected (boolean selected) boolean isselected (); setselected (boolean selected); ItemListener itemstatechanged ItemListener itemstatechanged Přednáška 2 25 Přednáška 2 26 ButtonGroup JTextField Slouží pro sdružení přepínačů (radiobutton) do skupiny ButtonGroup (); remove (AbstractButton button); add (AbstractButton button); ButtonModel getselection (); setselected (ButtonModel bm, boolean state); Enumeration <AbstractButton> getelements (); int getbuttoncount (); boolean isselected (ButtonModel bm); Jednořádkový textový vstup, ukončení zadávání klávesou ENTER Možnost nastavení pouze pro čtení, barvy pozadí, barvy textu, použitého fontu, ohraničení, vyznačení části textu, Délka zadávaného textu nesouvisí se šířkou editačního pole JTextField (); JTextField (String text); boolean geteditable(); seteditable (boolean editable) FocusListener focusgained(), focuslost() KeyListener keypressed(), KeyReleased(), keytyped() Přednáška 2 27 Přednáška 2 28
8 JTextArea JComboBox Víceřádkové zobrazení editovatelného textu, slouží pro vstup i výstup Obsah uložen jako String Použití posuvníků Formátování obsahu do řádků (vložení znaku \n do textu), volitelné zalamování JTextArea (); JTextArea (String text); JTextArea (String text, int rows, int columns); settext (String s); String gettext (); append (String str); insert (String strm int pos); seteditable (boolean editable), boolean iseditable (); setcolumns (int columns); int getcolumns (); setraws (int raws); int getraws (); setlinewrap (boolean wrap); boolean getlinewrap (); setwrapstyleword (boolean word); boolean getwrapstyleword (); Přednáška 2 29 Kombinace editačního boxu a rozbalovacího seznamu Možnost přidávání položek za běhu programu, možnost modifikace vlastní položky Položky jsou objekty s metodou tostring(), přístup přes indexy JComboBox (); JComboBox (Object[] items); JComboBox (ComboBoxModel amodel); additem (Object obj); insertitemat (Object obj, int index); removeitemat (int index); Object getitemat (int index); int getitemcount (); int getselectedindex (); Object getslecteditem (); setselectedindex (int index), int getitemcount (); boolean iseditable (); seteditable (boolean editable) FocusListener focusgained(), focuslost() Přednáška 2 30 JList Víceřádkový seznam s trvalým rozbalením (zobrazení) Dle počtu položek je použit posuvník Možnost výběru pouze jedné položky, souvislého intervalu nebo více položek Práce s položkami (inicializace, přidávání, odebírání, modifikace) pomocí DefaultListModel JList (); JList (Object[] listdata); JList (ListModel datamodel); getmodel.add (int pos, String str); getmodel.set (int pos, String str); getmodel.remove (int pos); getmodel.clear (); int getmodel.getsize (); setselectedmode (int selsctionmode); setselectedindex (int index); setselectedindices (int indices); int getselectedindex (); int [] getselectedindices (); boolean isselectionempty (); clearselection (); ListSectionMode: SINGLE_SELECTION, SINGLE_INTERVAL_SELECTION, MULTIPLE_INTERVAL_SELECTION JPanel Kontejner pro vkládání dalších komponent (dle nastaveného layout manageru) Barva pozadí, okraje, použití DoubleBufferingu Vhodný pro kreslení JPanel (); JPanel (boolean isdoublebuffered); JPanel (LayoutManager layout); JPanel (LayoutManager layout, boolean isdoublebuffered); add (Component comp); remove (Component comp); getcomponent setborder (Border border); // NoBorder, BevelBorder, EtchedBorder, LineBorder, TitledBorder, boolean isdoublebuffered (); setdoublebuffered (boolean doublebuff); boolean isfocusable (); mouseclicked, mouseentered, mouseexited, MouseListener mousepressed,mousereleased MouseMotionListener mousemotiondragged, mousemotionmoved Přednáška 2 31 Přednáška 2 32
Př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í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í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í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íce8. Grafické uživatelské rozhraní
8. Grafické uživatelské rozhraní Až dosud jsme pro výstupy a vstupy do našich programů využívali pouze konzoli nebo soubor. Java nám však poskytuje nástroje pro tvorbu grafického uživatelského rozhraní,
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íceJAVA GUI Java, zimní semestr
JAVA GUI 1 Přehled JDK1.0 AWT Abstract Window Toolkit cíl na všech platformách dobře vypadající GUI moc se nepovedlo různá omezení (např. jen 4 fonty) špatně se používalo "ne-objektový" přístup JDK1.1
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í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íceJava, grafické uživatelské rozhraní 2. Layout managery. Okno a kontejner
Java, grafické uživatelské rozhraní 2 Layout managery Při rozmisťování komponent na formuláře (či jiné komponenty) nedefinujeme v Javě polohu komponent zpravidla absolutně. Důvodem je fakt, že Java může
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í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ě (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í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í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íce01_Grafické rozhraní
01_Grafické rozhraní Jaké jsou základní rozdíly mezi konzolovou aplikací a aplikací s grafickým uživatelským rozhraním? Hlavní rozdíly mezi běžnou konzolovou aplikací a aplikací s GUI lze shrnout do dvou
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í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í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íceSwing. Přehled komponent. Java UI, letní semestr 2017/2018 1
Swing Přehled komponent 1 Label třída JLabel pro zobrazení krátkého textu obrázku obojího 2 Tlačítka mnoho druhů tlačítek (buttons) všechna dědí od AbstractButton normální tlačítko (JButton) "klikací"
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íceGrafické uživatelské rozhraní GUI event-driven programming událostmi řízené programování
Grafické uživatelské rozhraní GUI event-driven programming událostmi řízené programování 1 Osnova 2 1. Vytváření oken základní balíčky 2. Třída Component 3. Komponenty atributy komponent 4. Swingové komponenty
VíceDiplomová práce Plugin do Eclipse pro tvorbu GUI s konfigurovatelným generováním zdrojového kódu
Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky Diplomová práce Plugin do Eclipse pro tvorbu GUI s konfigurovatelným generováním zdrojového kódu Plzeň,
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í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íceTvorba grafického uživatelského rozhraní v BlueJ
Jihočeská univerzita v Českých Budějovicích Pedagogická fakulta Katedra informatiky Bakalářská práce Tvorba grafického uživatelského rozhraní v BlueJ Vypracoval: Tomáš Svatek Vedoucí práce: RNDr. Hana
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í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í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íceJava - Kresba. 2/28/11 1/8 Java - kresba
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,
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í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íceProgramování v jazyku Java GUI, události
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Programování v jazyku Java GUI, události BI-PJV Programování v jazyku Java Katedra teoretické informatiky Miroslav Balík Fakulta informačních
VíceInovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií
VY_32_INOVACE_33_12 Škola Střední průmyslová škola Zlín Název projektu, reg. č. Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávací oblast Vzdělávání v informačních a komunikačních
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íceMicrosoft Office. Word styly
Microsoft Office Word styly Karel Dvořák 2011 Styly Používání stylů v textovém editoru přináší několik nesporných výhod. Je to zejména jednoduchá změna vzhledu celého dokumentu. Předem připravené styly
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íceTabulky Word 2007 - egon. Tabulky, jejich formátování, úprava, změna velikosti
Tabulky Word 2007 - egon Tabulky, jejich formátování, úprava, změna velikosti Jan Málek 26.7.2010 Tabulky Tabulky nám pomáhají v pochopení, jak mezi sebou souvisí určité informace, obohacují vzhled dokumentu
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 B6B36PJV Programování v JAVA Jan Faigl, Ji í Vok ínek, 2016
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íceTřídy a objekty -příklady
Třídy a objekty -příklady 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 Příklad 1 Kvadratická rovnice static void
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íceWord 2007. Josef Pecinovský. podrobný průvodce
Word 2007 podrobný průvodce Josef Pecinovský Vydala Grada Publishing, a.s. U Průhonu 22, Praha 7 jako svou 2893. publikaci Odpovědný redaktor Pavel Němeček Návrh vnitřního layoutu Miroslav Lochman Počet
VíceFrantišek Hudek. květen 2013. 6. - 7. ročník
VY_32_INOVACE_FH13_WIN Jméno autora výukového materiálu Datum (období), ve kterém byl VM vytvořen Ročník, pro který je VM určen Vzdělávací oblast, obor, okruh, téma Anotace František Hudek květen 2013
VíceGUI. 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íce16. února 2015, Brno Připravil: David Procházka
16. února 2015, Brno Připravil: David Procházka Skrývání implementace Základy objektového návrhu Připomenutí návrhu použitelných tříd Strana 2 / 17 Obsah přednášky 1 Připomenutí návrhu použitelných tříd
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íceSada 2 Microsoft Word 2007
S třední škola stavební Jihlava Sada 2 Microsoft Word 2007 04. Text v záhlaví, zápatí, číslování stránek Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284
VíceObsah. Úvod 13 Komu je kniha určena 13 Konvence použité v knize 14 Zpětná vazba od čtenářů 14 Errata 15
Úvod 13 Komu je kniha určena 13 Konvence použité v knize 14 Zpětná vazba od čtenářů 14 Errata 15 KAPITOLA 1 Seznámení se systémem Windows 10 17 Úvodní přihlášení a uživatelské účty 17 Úvodní přihlášení
VíceJAVA V GUI Java, zimní semestr
JAVA GUI 1 Přehled JDK1.0 AWT Abstract Window Toolkit cíl na všech platformách dobře vypadající GUI moc se nepovedlo různá omezení (např. jen 4 fonty) špatně se používalo "ne-objektový" přístup JDK1.1
VíceAPLIKACE V JAZYCE JAVA OVLÁDANÉ PŘES WWW
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS APLIKACE V JAZYCE
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í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íceTechnologie JavaBeans
Technologie JavaBeans 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 Historie Komponentový model Typy komponent
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íceWindows 10 (6. třída)
Windows 10 (6. třída) Okno spuštěné aplikace: takto vypadá okno aplikace Malování - panel nástrojů Rychlý přístup Titulkový pruh se jménem souboru (Bez názvu) tlačka pro minimalizaci, obnovení z maxima
VíceJAVA JavaBeans Java, letní semestr
JAVA JavaBeans Komponenty přehled komponenta znovupoužitelný kus kódu charakterizována službami, které poskytuje a požaduje není přesná definice komponentové modely JavaBeans Enterprise JavaBeans (EJB)
VíceJAVA JavaBeans Java, letní semestr 2018
JAVA JavaBeans Komponenty přehled komponenta znovupoužitelný kus kódu charakterizována službami, které poskytuje a požaduje není přesná definice komponentové modely JavaBeans Enterprise JavaBeans (EJB)...
VícePřístupový systém VX800N. Vid-9200-2
Přístupový systém VX800N Vid-9200-2 Základní vlastnosti Jedná se o kódový zámek Obsahuje 2 nebo 3 vestavěné relé (závisí na verzi) Lze každé relé má jeden kód, kterým se aktivuje relé na nastavený čas
VíceJava pro programátory.net
Java pro programátory.net Lukáš Zapletal liberix.cz Představení jazyka Co je to Java? [džáva] Java je objektově orientovaný jazyk stvořený pro vestavěná zařízení, který se uchytil v mnoha oblastech od
VíceIterator & for cyklus
Iterator & for cyklus for (Object o : foo) funguje pokud je foo pole nebo je foo iterovatelné jako to zařídit? implementovat interface java.lang.iterable Iterable má jednu metodu java.util.iterator iterator()
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íceVektorový grafický editor
Vektorový grafický editor Jak již bylo řečeno, vektorový editor pracuje s křivkami; u vektorových obrázků se při zvětšování kvalita nemění. Jednoduchý vektorový obrázek může nakreslit ve Wordu; pro náročnější
VíceJAVA. GUI v std knihovně. Java, letní semestr
JAVA GUI v std knihovně 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
VíceOperační systém teoreticky
Přednášky o výpočetní technice Operační systém teoreticky Adam Dominec 2010 Rozvržení Operační systém Uživatelské účty Správa RAM Plánování procesů Knihovny Okna Správa zařízení Rozvržení Operační systém
VíceMobilní aplikace pro ios
Předběžná zadávací dokumentace k projektu: Mobilní aplikace pro ios Kontaktní osoba: Jan Makovec, makovec@ckstudio.cz Obsah Cíl projektu... 2 Obrazovky aplikace... 2 Základní prostředí aplikace... 2 Intro...
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íceFrantišek Hudek. březen 2013. 6. - 7. ročník
VY_32_INOVACE_FH07_WIN Jméno autora výukového materiálu Datum (období), ve kterém byl VM vytvořen Ročník, pro který je VM určen Vzdělávací oblast, obor, okruh, téma Anotace František Hudek březen 2013
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í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í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íceVirtuální přístroje. Použití grafického programování v LabVIEW. Ing. Pavel Mlejnek
Virtuální přístroje Použití grafického programování v LabVIEW Ing. Pavel Mlejnek mlejnp1@fel.cvut.cz Grafické programování LabVIEW Základní informace Principy grafického programování Vývojové prostředí
VíceJAVA UI. Programování uživatelských rozhraní v Javě. Java UI, letní semestr 2017/2018 1
JAVA UI Programování uživatelských rozhraní v Javě 1 Úvod Petr Hnětynka hnetynka@d3s.mff.cuni.cz Jiří Vinárek vinarek@d3s.mff.cuni.cz http://d3s.mff.cuni.cz/~hnetynka/javaui/ předpokládá se znalost Javy
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íceJava pro programátory.net
Java pro programátory.net Lukáš Zapletal lukas.zapletal@qcm.cz Představení jazyka Co je to Java? [džáva] Java je objektově orientovaný jazyk stvořený pro vestavěná zařízení, který se uchytil v mnoha oblastech
VíceMinisterstvo pro místní rozvoj. podprogram 117 513
Pokyny pro vyplnění elektronické žádosti podprogram 117 513 Podpora výstavby technické infrastruktury Elektronická žádost je umístěna na internetové adrese http://www3.mmr.cz/zad a lze na ni vstoupit i
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í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íceObsah Úvodem 11 Začít se dá i s málem 11 Abychom si rozuměli 12
Úvodem 11 Začít se dá i s málem 11 Abychom si rozuměli 12 1. Seznámení s PowerPointem 13 K čemu slouží PowerPoint 14 K čemu slouží prezentace 14 Obvyklé využití prezentací 14 Možnosti publikování prezentací
VícePohyb v listu. Řady a posloupnosti
Pohyb v listu. Řady a posloupnosti EU peníze středním školám Didaktický učební materiál Anotace Označení DUMU: VY_32_INOVACE_IT4.05 Předmět: IVT Tematická oblast: Microsoft Office 2007 Autor: Ing. Vladimír
VíceDUM 06 téma: Základní nástroje
DUM 06 téma: Základní nástroje ze sady: 2 tematický okruh sady: Bitmapová grafika ze šablony: 09 Počítačová grafika určeno pro: 2. ročník vzdělávací obor: vzdělávací oblast: číslo projektu: anotace: metodika:
VíceInovace výuky prostřednictvím šablon pro SŠ
Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748
VíceVýukový materiál zpracován v rámci projektu EU peníze školám
Výukový materiál zpracován v rámci projektu EU peníze školám Název školy: Střední zdravotnická škola a Obchodní akademie, Rumburk, příspěvková organizace Registrační číslo projektu: CZ.1.07/1.5.00/34.0649
VíceKlíčová slova: OOP, konstruktor, destruktor, třída, objekt, atribut, metoda
Anotace sady: Úvod do objektově orientovaného programování, VY_32_INOVACE_PRG_OOP_01 Autor: Blanka Sadovská Klíčová slova: OOP, konstruktor, destruktor, třída, objekt, atribut, metoda Druh učebního materiálu:
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í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íceStřední průmyslová škola strojnická Olomouc, tř.17. listopadu 49
Střední průmyslová škola strojnická Olomouc, tř.17. listopadu 49 Výukový materiál zpracovaný v rámci projektu Výuka moderně Registrační číslo projektu: CZ.1.07/1.5.00/34.0205 Šablona: III/2 Informační
VíceŠpičková fotopast s FULL HD kamerou
Špičková fotopast s FULL HD kamerou Návod k obsluze Hlavní výhody přístroje: Vysoká výdrž baterie Jednoduché ovládání Extrémně rychlé sepnutí kamery PIR čidlem (0,4s) www.spyobchod.cz Stránka 1 1. Popis
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íceMediator motivace. FontDialog. závislosti mezi jednotlivými ovládacími prvky jsou netriviální
Mediator Mediator motivace FontDialog závislosti mezi jednotlivými ovládacími prvky jsou netriviální Mediator - motivace zná pomůcky, koordinuje interakce místo distribuce chování do jednotlivých pomůcek
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í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íceWindows 8 - základy práce. Obsah: Úvodní obrazovka. Poslední aktualizace článku: 03/04/2015
Windows 8 - základy práce Poslední aktualizace článku: 03/04/2015 Zvětšovací a odečítací program SuperNova 13.50 již plně podporuje nový operační systém Windows 8. Pokud na něj přecházíte ze starších verzí,
VíceJAVA Unit testing Java, zimní semestr
JAVA Unit testing Úvod unit testing testování malý jednotek funkčnosti jednotka nezávislá na ostatních testování zcela oddělené vytvářejí se pomocné objekty pro testování kontext typicky v OO jazycích
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íceVYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS KOMPONENTA JAVA
VíceKlientský portál leasing24.cz. KLIENTSKÝ PORTÁL 24 NÁVOD NA PŘIHLÁŠENÍ A REGISTRACI UŽIVATELE Leasing24.cz. Stránka 1 z 15
KLIENTSKÝ PORTÁL 24 NÁVOD NA PŘIHLÁŠENÍ A REGISTRACI UŽIVATELE Leasing24.cz Stránka 1 z 15 OBSAH O klientském portálu... 3 Registrace klienta... 4 K první registraci budete potřebovat... 5 Registrace prostřednictvím
VíceProtlak Výuková příručka Fine s. r. o. 2010
Zadání Úkolem je navrhnout výztuž proti protlačení krajního sloupu čtvercového průřezu 200x200 mm železobetonovou deskou o tloušťce 200mm. Sloup je umístěn 500mm od okrajů desky. Deska je oslabena otvorem
VíceV týmové spolupráci jsou komentáře nezbytností. V komentářích se může např. kolega vyjadřovat k textu, který jsme napsali atd.
Týmová spolupráce Word 2010 Kapitola užitečné nástroje popisuje užitečné dovednosti, bez kterých se v kancelářské práci neobejdeme. Naučíme se poznávat, kdo, kdy a jakou změnu provedl v dokumentu. Změny
VíceTvorba trendové funkce a extrapolace pro roční časové řady
Tvorba trendové funkce a extrapolace pro roční časové řady Příklad: Základem pro analýzu je časová řada živě narozených mezi lety 1970 a 2005. Prvním úkolem je vybrat vhodnou trendovou funkci pro vystižení
Více