Evropská obchodní akademie, Děčín I, Komenského náměstí 2, příspěvková organizace IČ tel

Podobné dokumenty
Metodický list k didaktickému materiálu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Metodický list k didaktickému materiálu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Př. program s popojíždějícím autíčkem o 50 pixelů při každém stisku Popojeď

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Radka Veverková Flash

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-214. Internetový prohlížeč

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Flash - animace. 17. Změna tvaru - Flash. Vytvořila: Radka Veverková Vytvořeno dne: Flash. DUM číslo: 16 Název: Flash

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Metodický list k didaktickému materiálu

Inovace a zkvalitnění výuky prostřednictvím ICT Pokročilé metody parametrického modelování

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-211. Prezentace úvod

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

prostřednictvím ICT Téma didaktického materiálu RNDr. Václava Šrůtková

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

1. Překresli. Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Inovace a zkvalitnění výuky prostřednictvím ICT

Radka Veverková Flash

VY_32_INOVACE_E 14 02

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Nejzajímavější jsou události MouseDown a KeyDown.

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Metodický list k didaktickému materiálu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-210

Digitální učební materiál

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Instalace SQL 2008 R2 na Windows 7 (64bit)

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-217. Komprimace dat

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo didaktického materiálu

Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1

Přidávání animací do programů

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Inovace a zkvalitnění výuky prostřednictvím ICT Vytváření aplikací pro systém Windows

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Ovládací panely

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Operační systém. Mgr. Renáta Rellová. Výukový materiál zpracován v rámci projektu EU peníze školám

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

INFORMATIKA MS WORD, HROMADNÁ KORESPONDENCE

Digitální učební materiál

Instalace Microsoft SQL serveru 2012 Express

EU peníze středním školám digitální učební materiál

Metodický list k didaktickému materiálu

Základy programování (C#) Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1134_Základy programování (C#) _PWP

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Ú é š é é š ú ů š Í Ú ú éú ú ú ú ú é é

Předmět: informační a komunikační technologie

PowerPoint. 6. Jak na vstupní efekty. Vytvořila: Radka Veverková Vytvořeno dne: PowerPoint

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

ZP4CS 10. hodina Kreslení deskové hry. Aleš Keprt duben 2015

Transkript:

. Evropská obchodní akademie, Děčín I, Komenského náměstí 2, příspěvková organizace IČ 47274611 tel. 412 516 127 email: skola@oadc.cz Registrační číslo projektu CZ.1.07/1.5.00/34.0999 Název projektu Zlepšení podmínek pro vzdělávání na EOA Šablona III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Sada Aplikovaná informatika 1. ročník Označení materiálu VY_32_INOVACE_19_20 Název materiálu Timer Předmět a ročník AIT, 1. Autor materiálu Jan Horais Stručná anotace Materiál seznamuje studenty s komponentou Timer. Metodický pokyn Materiál je k určen jako podpora výkladu do hodiny. Datum tvorby 20. 4. 2013 Datum ověření ve výuce 29. 4. 2013 Třída 1.A, MIT

Timer 1 Úvod Pokud potřebujeme vytvořit animaci, případně opakovat konkrétní činnost, využijeme komponentu Timer, (časovač). Komponenta Timer je součástí záložky Toolbox Components. Časovač přetáhneme myší do okna programu a pustíme. Protože se jedná o komponentu, která není v běžícím programu vidět, umístila se na pruh pod oknem aplikace. Když máme Timer umístěný v programu, můžeme ho použít. Vytvoříme blikající kolečko, které se bude náhodně objevovat v okně programu. Postup bude následující: založíme generátor náhodných čísel, vygenerujeme náhodné souřadnice x a y, nakreslíme kolečko na souřadnicích x a y, do události Tick komponenty Timer napíšeme Refresh(), to zajistí znovu vykreslení kolečko na nových souřadnicích. Z praktických důvodů nebudeme kreslit přímo do okna programu, ale do komponenty Panel z toolboxu Containers. Zdrojový kód příkladu je zobrazen jako Kód 1. Kód 1: Blikající kolečko. 1 // z a l o ž í m e g e n e r á t o r náhodných č í s e l 2 Random NahCisl = new Random ( ) ; 3 4 p r i v a t e void panel1_paint ( o b j e c t sender, PaintEventArgs e ) 5 { 6 // v y g e n e r u j e x a y, maximální x a y j e š í ř k a a výška panelu 7 // zmenšená o 25, což j e průměr k r e s l e n é h o k o l e č k a 8 i n t x = NahCisl. Next ( panel1. Width ) ; 9 i n t y = NahCisl. Next ( panel1. Height ) ; 10 // z a l o ž í m e plátno na k t e r é budeme k r e s l i t k o l e č k o 11 Graphics tabule = e. Graphics ; 12 // n a k r e s l í m e k o l e č k o 13 tabule. FillEllipse ( Brushes. Red, x, y, 25, 25) ; 14 } 15 16 // komponeta timer opakovaně p ř e k r e s l u j e okno 17 p r i v a t e void timer1_tick ( o b j e c t sender, EventArgs e ) 2

18 { 19 Refresh ( ) ; 20 } Pokud tento kód spustíte, nakreslí se po spuštění jedno kolečko a to bude vše. Chyba je prostá. Časovač timer1 musíme spustit (nechat tikat). To uděláme tak, že vlastnost Enabled nastavíme na True. Po spuštění se začne opakovaně překreslovat panel1 a s ním i kolečko. K úplnému popisu komponenty Timer zbývá poslední věc. Jak často (rychle) se panel1 překresluje? Rychlost se nastavuje ve vlastnosti Interval a její hodnota je v milisekundách. To znamená, že při nastavení Interval =1000 se překreslení provede jednou za sekundu, při nastavení Interval =250 se překreslení provede čtyřikrát za sekundu. Náš program ještě trochu vylepšíme. Přidáme tlačítko, které spustí/ukončí překreslování kolečka (viz Kód 2). Kód 2: Stopnutí/spuštení Timeru. 1 p r i v a t e void button1_click ( o b j e c t sender, EventArgs e ) 2 { 3 i f ( timer1. Enabled == t r u e ) 4 { 5 timer1. Enabled = f a l s e ; 6 } 7 e l s e 8 { 9 timer1. Enabled = t r u e ; 10 } 11 } Příklad v Kódu 2 je fakticky správně a dělá přesně co chceme, ale je trochu ukecený. Stejnou funkčnost nám poskytne i Kód 3. Kód 3: Stopnutí/spuštení Timeru další možnost. 1 p r i v a t e void button1_click ( o b j e c t sender, EventArgs e ) 2 { 3 timer1. Enabled =! timer1. Enabled ; 4 } 2 Cvičení Vytvořte následující programy: 3

Kulička se pohybuje zleva doprava a zpět. Kulička se začne pohybovat ze středu panelu. náhodným směrem Kód 4: Jezdící kulička doprava a zpět. 1 // z a l o ž í m e náhodné č í s l o, p o z i c i k u l i č k y a o k o l i k s e má posunout a j e j í poloměr 2 Random nahcisl = new Random ( ) ; 3 i n t kulickax = 0 ; 4 i n t kulickay = 0 ; 5 i n t zmena = +1; 6 i n t polomer = 2 5 ; 7 8 // o š e t ř í m e posun k u l i č k y 9 p r i v a t e void timer1_tick ( o b j e c t sender, EventArgs e ) 10 { 11 // posunu x ovou s o u ř a d n i c i o zmena 12 kulickax = kulickax + zmena ; 13 // z k o n t r o l u j i j e s t l i x ova s o u ř a d n i c e není v ě t š í než rozměr panelu 14 // pokud ano, bude s e pohybovat zpět 15 i f ( kulickax >= ( panel1. Width polomer ) ) 16 zmena = 1; 17 // z k o n t r o l u j i j e s t l i x ova s o u ř a d n i c e není menší než 0 18 // pokud ano, bude s e pohybovat vpřed 19 i f ( ( kulickax ) <= 0) 20 zmena = +1; 21 // znovuvykreslíme okno programu 22 Refresh ( ) ; 23 } 24 // v y k r e s l í m e k u l i č k u 25 p r i v a t e void panel1_paint ( o b j e c t sender, PaintEventArgs e ) 26 { 27 Graphics tabule = e. Graphics ; 28 tabule. FillEllipse ( Brushes. Red, kulickax, kulickay, kulickaplomer, kulickaplomer ) ; 29 } Kód 5: Náhodný směr. 1 // z a l o ž í m e náhodné č í s l o, p o z i c i k u l i č k y, o k o l i k s e má posunout na ose X a Y a j e j í poloměr 2 Random NahCisl = new Random ( ) ; 3 i n t kulickax, kulickay = 0 ; 4 i n t zmenax, zmenay = 0 ; 5 i n t polomer = 2 5 ; 6 7 // Nasatavíme k u l i č k u na s t ř e d Panelu, vygenerujeme posun na ose X a Y a spustíme Timer 8 p r i v a t e void btnstart_click ( o b j e c t sender, EventArgs e ) 9 { 4

10 kulickax = panel1. Width / 2 ; 11 kulickay = panel1. Height / 2 ; 12 zmenax = NahCisl. Next ( 10, 11) ; 13 zmenay = NahCisl. Next ( 10, 11) ; 14 timer1. Enabled = t r u e ; 15 Refresh ( ) ; 16 } 17 // Ošetříme posun k u l i č k y a zkontrolujeme, j e s t l i n e u j e l a z Panelu 18 p r i v a t e void timer1_tick ( o b j e c t sender, EventArgs e ) 19 { 20 kulickax += zmenax ; 21 kulickay += zmenay ; 22 i f ( kulickay <= 0) 23 timer1. Enabled=f a l s e ; 24 i f ( kulickax <= 0) 25 timer1. Enabled=f a l s e ; 26 i f ( kulickay >= ( panel1. Height polomer ) ) 27 timer1. Enabled = f a l s e ; 28 i f ( kulickax >=(panel1. Width polomer ) ) 29 timer1. Enabled = f a l s e ; 30 Refresh ( ) ; 31 } 32 33 // v y k r e s l í m e k u l i č k u 34 p r i v a t e void panel1_paint ( o b j e c t sender, PaintEventArgs e ) 35 { 36 Graphics tabule = e. Graphics ; 37 tabule. FillEllipse ( Brushes. Red, kulickax, kulickay, kulickaplomer, kulickaplomer ) ; 38 } V událost timer1_tick při kontrole jestli už kulička neujela z panelu můžeme použít i jedno if, viz Kód 6 Kód 6: Náhodný směr úprava podmínky. 1 p r i v a t e void timer1_tick ( o b j e c t sender, EventArgs e ) 2 { 3 kulickax += zmenax ; 4 kulickay += zmenay ; 5 i f ( ( kulickay <= 0) ( kulickax <= 0) ( kulickay >= ( panel1. Height polomer ) ) ( kulickax >=(panel1. Width polomer ) ) ) 6 timer1. Enabled = f a l s e ; 7 Refresh ( ) ; 8 } 5

Literatura [1] VYSTAVĚL, Radek. Moderní programování učebnice pro začátečníky. moderníprogramování s.r.o. 2009, ISBN 978-80-903951-6-9 [2] MICROSOFT CORPORATION Microsoft Visual C# 2010 Express [software]. 25. listopadu 2012 [2012-11-25]. Dostupné z: http://www.microsoft.com/visualstudio/cze/downloads#d-2010- express. Požadavky na systém: Windows 7 (x86 a x64), Windows 8 (x86 a x64), Windows Server 2008 R2 (x64), Windows Server 2012 (x64) 6

Použitý SW 1. SPENCER KIMBALL, PETER MATTIS A VÝVOJOVÝ TÝM GIMP Gimp 2.8.2 [software]. 25. listopadu 2012 [2012-11-25]. Dostupné z: http://sourceforge.net/projects/gimp-win/files/gimp%20%2b%20 GTK%2B%20(stable%20release)/GIMP%202.8.2/gimp-2.8.2-setup-1.exe/ download?accel_key=71%3a1354392469%3ahttp%253awww.gimp.org /downloads/%3a2e4c478d%24a9f1db49803bd24b7e55cd50aecdc56e10bd140a &click_id=c80d2e80-3bf2-11e2-afaf-0200ac1d1d92&source=accel. Požadavky na systém: Windows XP SP3 a novější. 2. TOOLSCENTER TeXnicCenter 1.0 [software]. 25. listopadu 2012 [2012-11-25]. Dostupné z: http://texniccenter.en.softonic.com/download. Požadavky na systém: (La)TeX, Windows XP a novější. 3. MICROSOFT CORPORATION Microsoft Visual C# 2010 Express [software]. 25. listopadu 2012 [2012-11-25]. Dostupné z: http://www.microsoft.com/visualstudio/cze/downloads#d-2010-express. Požadavky na systém: Windows 7 (x86 a x64), Windows 8 (x86 a x64), Windows Server 2008 R2 (x64), Windows Server 2012 (x64) 7