Java FX Innerhalb einem FXML-Dialog weiteren FXML-Dialog einblenden

Maxi62

Aktives Mitglied
Hi,
ich starte gerade mit JavaFX eine FXML-Anwendung. An einen Punkt hänge ich gerade, vielleicht könnt ihr mir einen Tipp ode rBeispiel nennen geben:

Mit dem SceneBuilder habe ich eine FXML-Datei für ein Main Windows erstellt und verwalte das auch in einer Controller-Datei.
Die Datei enthält quasi nur ein Menü und Borderlayout und ein paar Kleinigkeiten.
Zudem habe ich mit dem SceneBuilder mehrere weitere komplexe Dialoge erstellt.
Ich habe also mehrere Controllerdateien!
Je nachdem welchen Menüpunkt ich im Main-Fenster aufrufe, möchte ich innerhalb des Main-Fensters ,innerhalb des Center-Bereiches des Borderlayouts, nun eine andere FXML-Datei darstellen.

Wie mach ich das?

Praktisches Beispiel wäre eine Fakturierung wo ich jeweils eigene FXML-Dateien für Lieferantenverwaltung, Bestellungen, Lagerverwaltung usw. habe und diese per Menü innerhalb eines Fensters aufrufen möchte. Ich möchte nicht alles in einer FXML-Datei definieren, da diese bei den vielen Dialogen zu unübersichtlich würde.

Für einen Tipp wäre ich dankbar!
 

dzim

Top Contributor
Ich mache das so, dass ich im "Root"-Controller via FXMLLoader die jeweilige FXML lade und dann im "Root" an die entsprechende Stelle einfüge.
Der Ansatz ist dann im wesentlichen ein wenig wie bei den Fragmenten von Android: Eine zentrale Activity und X verschiedende Fragmente die darauf angezeigt (oder ausgetauscht) werden.

Beispiel:
Java:
@FXML
private BorderPane rootPane;

// local stuff
private GridPane defaultView;

@FXML
public void initialize() {
	try {
		FXMLLoader fxmlLoader = new FXMLLoader();
		fxmlLoader.setResources(StringResource.getResourceBundle());
		fxmlLoader.setLocation(Main.class
				.getResource("ui/layout/Default.fxml"));
		defaultView = (GridPane) fxmlLoader.load();
	} catch (IOException e) {
		e.printStackTrace();
	}

	if (defaultView != null && !rootPane.getCenter().equals(defaultView)) {
		rootPane.setCenter(defaultView);
	}
}
 
Zuletzt bearbeitet:

Maxi62

Aktives Mitglied
Danke für Tipp, ich habe es jetzt aufgrund deines Tipps so gelöst:

Code:
    @FXML
    public BorderPane rootBorderPane;
    
    /**
     * Initializes the controller class.
     */
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        // TODO
        
        try {
		FXMLLoader fxmlLoader = new FXMLLoader();
                fxmlLoader.setLocation(Main.class.getResource("view/FXMLKunde.fxml"));
		rootBorderPane.setCenter( fxmlLoader.load());
	} catch (IOException e) {
		e.printStackTrace();
	}
        
        
    }

Scheint auch alle sgut zu gehen.
Ich habe nicht so ganz verstanden wozu bei diese Zeile dient:
Code:
fxmlLoader.setResources(StringResource.getResourceBundle());
Wozu brauch ich das?
 

dzim

Top Contributor
Ach die kannst du getrost vergessen. Ich habe in unserer Anwendung eine Hilfsklasse zum umschalten der Sprachdaten, die in Form eines ResourceBundles daher kommen. Damit werden die dynamischen (sprich: Sprachunabhängigen) Platzhalter aus der FXML mit denen aus einer strings.properties (oder strings_de.properties, strings_en.properties, ...) aufgefüllt.

Im Controller kann man sicher an die Resourcen ran kommen (z.b. indem man explizit das Initializable-Interface implementiert) und dann auf Änderungen reagieren. Im Endeffekt habe ich aber da einen anderen Event-gesteuerten Mechanismus implementiert und genaugenommen ist die Zeile auch bei mir Wertlos geworden...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
ralfb1105 JavaFX HTTP Download task im Hintergrund innerhalb GUI AWT, Swing, JavaFX & SWT 70
ralfb1105 JavaFX Label lässt sich innerhalb service Task nicht updaten? AWT, Swing, JavaFX & SWT 22
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
J JavaFX Rectangle innerhalb eines Rectangle oder Panes positionieren? AWT, Swing, JavaFX & SWT 1
D TAB Taste innerhalb eines JSpinner AWT, Swing, JavaFX & SWT 2
M PDF einlesen und innerhalb Pane anzeigen AWT, Swing, JavaFX & SWT 5
M Swing JPanel innerhalb eines Frames verschieben AWT, Swing, JavaFX & SWT 3
R Swing Bewegung eines Graphics Objektes innerhalb eines JPanels funktioniert nicht richtig AWT, Swing, JavaFX & SWT 2
A Swing Textübergabe innerhalb der Anwendung in unterschiedlichen Fenster AWT, Swing, JavaFX & SWT 8
C JTable Drag and Drop von Zeilen innerhalb einer Table AWT, Swing, JavaFX & SWT 2
U Bild innerhalb hatml code anzeigen AWT, Swing, JavaFX & SWT 5
M Mehrere Fenster innerhalb einer Application AWT, Swing, JavaFX & SWT 3
L Swing Component alignment innerhalb einer JList AWT, Swing, JavaFX & SWT 3
R JTextField Eingabefeld innerhalb verschieben AWT, Swing, JavaFX & SWT 2
P setStroke komplett innerhalb eines Rectangles AWT, Swing, JavaFX & SWT 4
D JDialog alwaysOnTop, aber nur innerhalb der Applikation AWT, Swing, JavaFX & SWT 3
D Bestimmtes JPanel innerhalb eines JTabbedPane ansprechen AWT, Swing, JavaFX & SWT 2
D Drag-Action: Innerhalb meiner View? AWT, Swing, JavaFX & SWT 3
S Swing JButton mit ActionListener innerhalb einer JTable AWT, Swing, JavaFX & SWT 4
H Swing Ausrichtung innerhalb der Reiterlasche eines JTabbedPanes AWT, Swing, JavaFX & SWT 9
K JButtons innerhalb eines JPanels verschieben (DRAG&DROP) AWT, Swing, JavaFX & SWT 5
A SWT Scrollable Composite innerhalb eines Composites AWT, Swing, JavaFX & SWT 3
JuliaOne Komponenten innerhalb eine JScrollpane werden auch ausserhalb davon gezeichnet! AWT, Swing, JavaFX & SWT 7
M Swing Rahmen innerhalb des JButton entfernen AWT, Swing, JavaFX & SWT 2
D JTables, Test highlighten innerhalb einer Zelle AWT, Swing, JavaFX & SWT 5
J Swing Container innerhalb eines JPanels erfragen AWT, Swing, JavaFX & SWT 3
N rootPane überschreibt bg Innerhalb von secs AWT, Swing, JavaFX & SWT 5
G MousePosition innerhalb eines MouseWheelEvents AWT, Swing, JavaFX & SWT 2
B SWT - Drag & Drop innerhalb einer Table AWT, Swing, JavaFX & SWT 3
hdi Layout innerhalb eines JScrollPane AWT, Swing, JavaFX & SWT 4
A Drag & Drop von Zeilen innerhalb einer Tabelle AWT, Swing, JavaFX & SWT 2
R Gelöst: panelGrösse innerhalb eines JFrames AWT, Swing, JavaFX & SWT 7
I Text innerhalb von Rectangle rendern AWT, Swing, JavaFX & SWT 3
T Auf Fenster innerhalb der Anwendung zugreifen-auch elegant? AWT, Swing, JavaFX & SWT 2
R Innerhalb der GUI Klasse meine neue Klasse aufrufen AWT, Swing, JavaFX & SWT 1
A Hintergrundfrabe eines JButtons innerhalb eines JToolBar AWT, Swing, JavaFX & SWT 4
A Aktualisierung eines Bildes innerhalb einer Komponente AWT, Swing, JavaFX & SWT 7
T erkennen ob innerhalb oder außerhalb von canvas gezeichnet AWT, Swing, JavaFX & SWT 2
L TreePath eines Objektes innerhalb eines JTree ermitteln? AWT, Swing, JavaFX & SWT 1
B einzelne Zellen scrollbar machen innerhalb einer Tabelle AWT, Swing, JavaFX & SWT 3
javasdann JTable sichtbare Zeilen innerhalb von JScrollPane ermitteln AWT, Swing, JavaFX & SWT 5
G JTable Zeilenumbruch innerhalb einer Zelle bzw. columnHeader AWT, Swing, JavaFX & SWT 1
M Seltsame Exception bei setVisible(true) Methode in einem JFrame AWT, Swing, JavaFX & SWT 2
MartinNeuerlich Kann mir jemand, der einen Mac mit einem m1 oder m2-Chip hat, eine POM geben mit der Javafx-Fullscreen beim Mac mit m-Chip funktioniert? AWT, Swing, JavaFX & SWT 1
W 2 JTables in einem Swing-Fenster? AWT, Swing, JavaFX & SWT 5
J JavaFx PDF in einem Element in einem Fenster anzeigen. AWT, Swing, JavaFX & SWT 11
Mojo7310 Ändern von Text in JLabel mit einem Button AWT, Swing, JavaFX & SWT 11
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
S Swing zu einem Datum Tage addieren/subtrahieren AWT, Swing, JavaFX & SWT 6
E Swing Mausposition auf einem JFrame erkennen AWT, Swing, JavaFX & SWT 5
Jose05 NullPointerException bei Beschreiben eines Labels aus einem Array AWT, Swing, JavaFX & SWT 12
ExceptionOfExpectation Textdarstellung auf einem Canvas mit Hilfe von repaint(); AWT, Swing, JavaFX & SWT 6
2 JavaFX die ChoiceBox leitet den String nicht weiter oder es komm zu einem NullPointer AWT, Swing, JavaFX & SWT 8
L JavaFX javafx.fxml.LoadException bei einem Taschenrechner AWT, Swing, JavaFX & SWT 5
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
N Nur bei einem Textfiled Nullpointerexception bei getText() AWT, Swing, JavaFX & SWT 1
H JComobox in einem JPopupNeu AWT, Swing, JavaFX & SWT 7
P Button simpler random auf einem JPanel verteilen? AWT, Swing, JavaFX & SWT 3
W Inject bei einem Swing Frontend AWT, Swing, JavaFX & SWT 8
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
Z Mit einem Button einen anderen Button Triggern AWT, Swing, JavaFX & SWT 3
D AWT Wie kann ich ein Frame von einem anderen aus beeinflussen? AWT, Swing, JavaFX & SWT 7
T Setzen von der Schriftgröße bei einem Shell AWT, Swing, JavaFX & SWT 15
A checkbox in einer TableView abhängig von einem anderen Celleninhalt disablen AWT, Swing, JavaFX & SWT 1
J Fenster mit Inhalten aus einem Array Füllen AWT, Swing, JavaFX & SWT 4
D JavaFX Ein Parameter von einem Stage(GUI) zu einem anderen übergeben AWT, Swing, JavaFX & SWT 6
T Bilder bei einem JFrame einfügen AWT, Swing, JavaFX & SWT 4
S JavaFX Variablen in einem FXML File verwenden AWT, Swing, JavaFX & SWT 8
A Objekt von einem Window erstellen? AWT, Swing, JavaFX & SWT 8
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
ralfb1105 JavaFX Alert Confirmation Dialog aus einem Service Thread AWT, Swing, JavaFX & SWT 8
F JavaFX Aktuelle Zeit in einem TextField anzeigen AWT, Swing, JavaFX & SWT 7
M JavaFX Bild zur ImageView in einem Kreis anzeigen. AWT, Swing, JavaFX & SWT 4
F JavaFX PNG aus einem resource Ordner laden AWT, Swing, JavaFX & SWT 8
F JavaFX Checken ob der Input einem festgelegten Format gleicht AWT, Swing, JavaFX & SWT 7
B JavaFX Bilder in einem Gewissen bereich halten AWT, Swing, JavaFX & SWT 1
cool_brivk24 BufferedImage einem ClickEvent hinzufügen AWT, Swing, JavaFX & SWT 13
Q-bert Doppelclick auf einem List item AWT, Swing, JavaFX & SWT 9
J JavaFX von einem Array aus Buttons herausfinden auf welcher geklickt wurde aus dem Array. AWT, Swing, JavaFX & SWT 1
C SWT autosize bei gc.drawString() auf einem Label AWT, Swing, JavaFX & SWT 7
R Farbe zu einem Eckpunkt generieren AWT, Swing, JavaFX & SWT 2
T Reihenfolge der Komponenten im einem JFrame AWT, Swing, JavaFX & SWT 8
F abgeleitete Panels von einem ContentPanel AWT, Swing, JavaFX & SWT 4
heinz ketchup While-Schleife in einem Service für GUI AWT, Swing, JavaFX & SWT 22
D zwei JLabel stapeln in einem JPanel AWT, Swing, JavaFX & SWT 5
H Hintergrundbild in einem Programm AWT, Swing, JavaFX & SWT 4
F RGB-Werte aus einem String einlesen AWT, Swing, JavaFX & SWT 26
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
I JavaFX Fenster wird auf einem anderen Rechner anders dargestellt AWT, Swing, JavaFX & SWT 5
DaCrazyJavaExpert Swing Zwei gleichgroße Panels in einem Scrollpane mit Layout AWT, Swing, JavaFX & SWT 9
W Swing Hilfe beim Einbinden von Bildern in einem JFrame AWT, Swing, JavaFX & SWT 8
F AWT mehrere Panels in einem Frame AWT, Swing, JavaFX & SWT 17
L JavaFX Mehrere JavaFX Szenen mit einem Menü AWT, Swing, JavaFX & SWT 1
L JavaFX Klickverhalten bei einem Panel AWT, Swing, JavaFX & SWT 1
V JavaFX Button Controller Fehler, trotz Erfolg in einem anderem Code? AWT, Swing, JavaFX & SWT 7
Y Darstellung und MouseHover bei bestimmten Wörtern in einem String AWT, Swing, JavaFX & SWT 2
GreenTeaYT Wie vergebe Ich den Jframe Title den Namen aus einem Element von der Arraylist ? AWT, Swing, JavaFX & SWT 4
H Geld pro Sekunde in einem Clickerspiel AWT, Swing, JavaFX & SWT 4
Java_RY wie kann ich auf JButtons in einem JPanel zugreifen AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben