Lekce 10 – Swing – MVC, binding
Repository s příklady k lekci: j1-lekce10
Osnova
- architektura MVC – Model, View, Controller
- návrhový vzor Pozorovatel/Observable – oznamování změn properties (Extended)PropertyChangeSupport
- binding – propojení modelu a view
- pomocné třídy
FormBuilderaActionBuilder - konstanty
Dokumentace
Cvičení
- Forkni a naklonuj si repository j1-lekce10.
- Vyzkoušej, že ti jde aplikace spustit.
- V
KontaktyControllerimplementuj metoduvypoctiStavAkcitak, aby tlačítko „Uložit“ bylo povolení jen tehdy, když je vyplněné jméno, příjmení a datum narození. - V
OsobaBeanimplementuje propertypohlavitypuString. Bude do ní možné uložit hodnotu např. „žena„ nebo „muž“. - V
OsobaBeanimplementuje propertydospelytypuBoolean, která bude pouze pro čtení. Bude se nastavovat podle data narození resp. věku v metoděvypocitVek. Když není zadané datum narození, hodnota budenull. - V
KontaktyControllerpřidej konstantuPOHLAVI, která bude obsahovatListprvků typuString. Do seznamu zadj alespoň hodoty „muž“ a „žena“. Seznam bude sloužit pro výběr pohlaví uživatelem, výsledek se uloží do propertypohlavivOsobaBean. - Do formuláře
HlavniOknopřidej nad tlačítka novou komponentu – combobox, který bude obsahovta výběr pohlaví ze seznamuKontaktyController.POHLAVI. Komponenta bude propojená (bind) s propertypohlavi. Před komponentou bude vhodný label. - Do formuláře
HlavniOknopřidej vedle comboboxu pro pohlaví nový checkbox s vhodným popiskem, který bude napojen na propertydospely. Checkbox bude pouze pro čtení. K checkboxu se nebude přidávat samostatný label – popisek je součástí checkboxu. -
Úkol
Z této lekce je 7. domácí úkol.