Domácí úkol - Vytváření objektů za běhu programu
Robot a bludiště
Prvním úkolem je dokončit bludiště s robotem.
Během hodiny jsme zkusili vytvořit čtvrtou zeď za běhu programu (příkaz
new JLabel()
) a všechny zdi jsme vložili do seznamu
taktéž vytvářeného za běhu (new ArrayList<JLabel>()
).
Tento seznam jsme měli uložený v proměnné ArrayList<JLabel> seznamZdi
.
Úkolem je ruční vytváření čtvrté zdi opět zrušit (můžete ho zakomentovat pomocí
blokového komentáře /* blokovy komentar */
).
V programu jsme to zkusili jen z demonstračních účelů.
Skutečným cílem je navrhnout pomocí designéru dalších několik stěn bludiště a všechny je přidat do seznamZdi
.
Díky tomu jimy robot nebude procházet, protože na ně bude aplikována detekce kolizí.
Pochlubte se s vaší kreativitou ve tvarech a složitostech bludiště!
Fotogalerie 2.0
V úkolu 04 jsme programovali Fotogalerii. Pokud ji nemáte funkční, můžete se podívat na demo 30-ukol-fotogalerie-reseni.7z. Bylo ale poněkud nešikovné, že fotky musely být přidány pomocí designéru do JLabelů, které se překrývaly a že jen jeden z JLabelů byl vždycky viditelný a ostatní skryté. Například:
labFotka1.setVisible(false); labFotka2.setVisible(false); labFotka3.setVisible(true); labFotka4.setVisible(false); labFotka5.setVisible(false); labFotka5.setVisible(false);
Úkolem je Fotogalerii 1.0 předělat tak, aby v programu byl na fotky jen 1 JLabel
a při mačkání tlačítek doleva a doprava
se v něm měnily fotky změnou vlastnosti icon
tohoto JLabelu. Tedy:
labFotka.setIcon(obrazekAktualniFotky);
Jednotlivé fotky jsou objekty typu ImageIcon.
Jak se za běhu vytváří objekt typu ImageIcon (včetně nahrání fotky ze souboru),
lze najít v generovaném kódu v metodě initComponents()
.
Nápověda: Hledejte příkaz new ImageIcon(........)
.
V obsluze události windowOpened
(metoda priOtevreniOkna(...)
)
je potřeba všechny obrázky nahrát a vložit do seznamu
ArrayList<ImageIcon> seznamFotek
.
Můžete použít svoje obrázky nebo si stáhnout Hančiny medvídky (medvidci.7z).
Pokud budete mít s úkoly jakýkoliv problém, využjte naši facebookovou skupinu, kde vám rádi poradíme.
Hotové úkoly zabalte 7-Zipem s heslem czechitas včetně šifrování jmen souborů a zašlete ho Kamčovi (mně) a Hance emailem.