Lab-11 – Implementieren ImageTab (Erweiterung Lab-10)
in Arbeit ...
Erweitere den Code von Lab-10 um eine Klasse ImgViewer, die ebanfalls das Erzeugen neuer ImgViewer-Tabs mit dynamisch eingeblendetem Menü-Eintrag "'Tab N' Bild laden" ermöglicht.
Die Struktur soll möglichst analog zu `QuickNote`implementiert werden.
Klasse JfxApp4 ist an einer einzigen Stelle zu ergänzen:
Methode composeMenuBar(), unter … new MenuItem("Neuer Notiz-Tab") ist der Code zur Anzeige eines weiteren MenuItems `Neuer ImgViewer Tab hinzuzufügen.
Klasse ImgViewer hat zu QuickNote analoge Instanzvariablen und zumindest folgenden Konstruktor und folgende Methoden:
-
ImgViewer(JfxApp4 app, int tabId)… erzeugt eine Instanz -
void setupMyTab(int tabIdx)-
erzeugt
myTab -
setzt das aktuelle ImgViewer-Objekt als
userData:myTab.setUserData(this). Damit kann bei Verfügbarkeit des Tab-Objekts auf das gesamteImgViewer-Objekt zugegriffen werden (soweitpublicGetter oder anderepublicMethoden dafür vorhanden). -
Als Content wird ein
ImageView-Objekt gesetzt. -
bei aktivem ImgViewer-Tab wird das MenuItem
'Tab N' Bild ladenangezeigt -
Der Pfad zum Bild wird mittels
aFileChooserObj.showOpenDialog(ownerWindow)bereitgestellt. -
Die von
Imageunterstützten Bild-Formate werden perExtensionFilterObjekten zugänglich gemacht. Liste unterstützter Formate siehe Image (JavaFX 17) | openjfx.io/javadocin Arbeit ...
-