JavaFX Inhalt eines SplitPane's durch Menü-Auswahl ändern?

config_de

Mitglied
Hallo Leute,

ich versuche mich gerade in JavaFX einzuarbeiten. Ich bin ein kürzlich ausgelernter FIAE und fange hier gerade bei 0 an. Basic-Java Kenntnisse sind da, mit JavaFX beschäftige ich mich seit gestern.

Momentan habe ich eine kleine Login-Scene.
Nach der Username/Passwort-Eingabe wechsel ich über den Anmelde-Button auf die folgende Scene:

V0SaWTl.png


AnchorPane > vertikales SplitPane > horizontales SplitPane. Und hier und da ein paar kleine VBox'en.

Links habe ich mein Menü worüber ich nun den angezeigten Inhalt im unteren rechten Bereich ändern möchte.

Wie setzt man das am besten um? Die komplette Scene zu wechseln erscheint mir etwas übertrieben. In einem anderem Tutorial habe ich 2 FXMLs gebaut und die eine dann in die andere quasi intergriert. Das eine war BorderPane und das andere AnchorPane. Das konnte ich da einfach mit ~ BorderPane.setCenter(xxx) oder so machen.

Aber wie mache ich das denn hier?
Ich weiß gerade gar nicht so richtig wonach ich überhaupt suchen soll :confused:

Ich hatte gestern irgendetwas vom CardLayout gelesen, aber das scheint wohl eher Richtung Swing/AWT oder so gewesen zu sein.

Gibt es da eine Lösung oder muss ich wirklich jedes mal die komplette Scene wechseln? Ein Schlagwort mit dem ich suchen kann reicht mir schon :)

Achso und ich benutze InelliJ und den Scene Builder.

config
 

andy82

Mitglied
Entspricht Cardlayout in Swing => StackPane (Stappel!) in JavaFx. Benutze Node.toFront() oder toBack().
 
Zuletzt bearbeitet:

config_de

Mitglied
Danke für die Antwort, es war aber nicht ganz wonach ich gesucht habe :)
Mittlerweile bin ich von SplitPane weg und habe einfach ein Pane im Pane gebaut.
Den "Wechsel" des Inhalts vollziehe ich einfach mit diesen Methoden:

Pane.getChildren().clear();
Pane.getChildren().addAll(x);

Keine Ahnung ob das jetzt perfekt ist, aber mein gewünschtes Ziel ist erstmal erreicht :cool:
 

andy82

Mitglied
@config.de: es gibt mehrere Wege nach Rome. StackPane ist selbst bereits eine Pane, wo mehere Pane als Stappel auf einannder liegen können. Was Du machst in Prinzip das gleiche, aber warum mus man das Rad neu finden, wenn es bereit da ist. Ausserdem versuche mal die Grösse deines Haupt Pane zu verändern => Passen die Chidren Pane automatisch daran?
 
Zuletzt bearbeitet:

config_de

Mitglied
Okay dann habe ich das mit dem Stackpane noch nicht richtig kapiert. Und nein, in meiner App passt sich gerade nur wenig automatisch so an wie es soll (eigentlich nur das Hintergrundbild :D)

Ich merk schon. Erstmal befasse ich mich jetzt mit den ganzen Layouts richtig.
Da muss ich wohl noch ein paar Tutorials wälzen. Die anfängliche Lernkurve hat es schon irgendwie in sich :rolleyes:

Danke für die Hilfe :)
 

config_de

Mitglied
Also ich habe mein Pane jetzt durch das StackPane ausgetauscht.

Mein Projekt ist jetzt so aufgebaut:

Hauptansicht.fxml (Ein AnchorPane in dem das StackPane und einige VBoxen enthalten sind, quasi der grobe Rahmen)
Menüpunkt1-XY.fxml's (enthalten AnchorPanes mit jeweils verschiedenen Inhalten..Tabellen, Labels,Buttons etc., diese lade ich dann in das StackPane)
Controller, Main etc.

Sollte ich jetzt alle AnchorPanes dem StackPane hinzufügen? Oder ist es sinnvoller nach wie vor immer nur eines hineinzuladen und den StackPane dann immer wieder zu leeren. Ich vermute eher ersteres, sonst hättest du mir nicht zum StackPane geraten. Aber macht das keine Probleme hinsichtlich der Performance? Wäre es nicht ressourcensparender immer nur das eine gebrauchte Pane zu laden anstatt alle auf einmal? Oder ist das eher zu vernachlässigen
 

andy82

Mitglied
Ich würde alle entsprechende Panen in den StackPane einbetteln lassen. Für jeden Menu-(oder Buton-)Select wird die entsprechende Pane mit toFront() angezeigt.
Eine Gui an sich ist kein Problem sowohl wegen Resourcen noch Performence. Man soll nur nicht Logik nicht in eine endlose Schleife geraten oder Gui zum tausend Mal neuzeichen lassen. Wenn man kapiert, was alles im Hintergrund läuft, meine Erfahrungen nach ist Java genau so schnell wie jede andere Sprache (z.B. C++). Es gibt keine bessere Sprache, es gibt nur schlechte Programmierer., egal in welchen Sprachen.
Ich würde empfehlen, diese Seite anzuschauen:
http://o7planning.org/en/10623/javafx-tutorial-for-beginners
dort gukst Du erstmal die Animationen an, um schnell einen Überblick alles, was in Fx gibt. Bei der Anwendung kann man später die Code (in Oracle-(Open-)JDK) genauer schauen, analysieren.
 
Zuletzt bearbeitet:

config_de

Mitglied
Okay danke für die Antwort, ich schau mir das heute Abend mal näher an. Und danke für den Tutorial-Link.
Von guten Tutorials kann ich gerade gar nicht genug bekommen :D
 

JStein52

Top Contributor
Wenn man kapiert, was alles im Hintergrund läuft, meine Erfahrungen nach ist Java genau so schnell wie jede andere Sprache (z.B. C++).
Die Aussage für sich alleine ist falsch. Aber was richtig ist, dass es bestimmte Anwendungsdomänen gibt wo es völlig egal ist ob du Java oder C++ nimmst. Es gibt aber umgekehrt welche bei denen du mit Java auf keinen grünen Zweig kommst.
 

dzim

Top Contributor
@JStein52 man muss einfach bedenken, das mit Java (und generell vielen Sprachen) keine "Echtzeit" umgesetzt werden kann. Ich denke jedoch, die Performance von Java ist nicht ausschliesslich von der Domäne, sondern primär vom Können des Programmierers abhängig (und ich nehme für mich nicht in Anspruch, immer sehr performance-orientiert zu programmieren - ich kann jedoch, wenn ich wirklich will :D).
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Swing Inhalt eines JPanels lesen AWT, Swing, JavaFX & SWT 3
S Swing Nur den sichtbaren Bereich eines TextPane mit Inhalt darstellem AWT, Swing, JavaFX & SWT 0
D 2D-Grafik Inhalt eines Graphics in anderes Graphics zeichnen.... AWT, Swing, JavaFX & SWT 3
P AWT Wie kann mein listener den Inhalt eines anderen Textfelds ändern? AWT, Swing, JavaFX & SWT 10
B Inhalt eines ScrolledComposite ändern AWT, Swing, JavaFX & SWT 5
S Swing Inhalt eines Fenster bei Größenänderung anpassen (GroupLayout) AWT, Swing, JavaFX & SWT 2
C Swing Inhalt eines JPanels ermitteln & bearbeiten AWT, Swing, JavaFX & SWT 5
G Der Inhalt eines Image wird nicht vollständig angezeigt AWT, Swing, JavaFX & SWT 4
O auf den inhalt eines selektierten Tabs zugreifen AWT, Swing, JavaFX & SWT 5
P Inhalt eines Canvas verkleinern AWT, Swing, JavaFX & SWT 3
P auf den Inhalt eines Vectors zugreifen AWT, Swing, JavaFX & SWT 8
J Inhalt eines Scrollpane speichern AWT, Swing, JavaFX & SWT 3
N Inhalt eines JEditorPanes ausdrucken AWT, Swing, JavaFX & SWT 5
K aktuellen Inhalt eines JPanels ermitteln AWT, Swing, JavaFX & SWT 3
D Inhalt eines JPanel kopieren AWT, Swing, JavaFX & SWT 7
M Inhalt eines zip-Files in einem JTree darstellen AWT, Swing, JavaFX & SWT 3
H AWT Dialog Größe ändern - Schwarzer Inhalt beim groß ziehen AWT, Swing, JavaFX & SWT 1
Fragerjava Frame inhalt komplett löschen AWT, Swing, JavaFX & SWT 4
_user_q Wie den Inhalt vom Spinner auf Integer überprüfen? AWT, Swing, JavaFX & SWT 15
izoards JavaFX TableView mit Array Inhalt füllen AWT, Swing, JavaFX & SWT 1
B Batik: Inhalt JComponent to SVG? AWT, Swing, JavaFX & SWT 6
B JavaFX TableView-Zellen sollen automatisch so groß wie der größte Inhalt sein AWT, Swing, JavaFX & SWT 6
B JavaFX TextInputDialog: Focus auf Eingabefeldinhalt setzen und nach OK Inhalt leeren AWT, Swing, JavaFX & SWT 5
H JTabel Inhalt löschen AWT, Swing, JavaFX & SWT 1
L JDialog hat manchmal keinen Inhalt AWT, Swing, JavaFX & SWT 2
A Swing Datei lässt sich zwar speichern, aber nicht laden (Inhalt im JTextField anzeigen) AWT, Swing, JavaFX & SWT 18
ZH1896ZH JavaFX Wie kann ich die Fenstergrösse entsprechend dem Inhalt vergrössern/verkleinern AWT, Swing, JavaFX & SWT 2
K JavaFX Component Größe an Inhalt anpassen AWT, Swing, JavaFX & SWT 11
L JavaFX Pane inklusive Inhalt der Bildschirm Auflösung anpassen AWT, Swing, JavaFX & SWT 13
Hatsi09 JTextArea Inhalt verlinken AWT, Swing, JavaFX & SWT 4
L JPanel zeigt keinen Inhalt AWT, Swing, JavaFX & SWT 1
A Inhalt wechseln bei Klick auf Label AWT, Swing, JavaFX & SWT 8
C JTextField Inhalt mit Maus selektieren wenn disabled AWT, Swing, JavaFX & SWT 2
C JavaFX ProGuard -> TableView kein Inhalt AWT, Swing, JavaFX & SWT 7
D Inhalt von JTextField in MySQL speichern. Wie ? AWT, Swing, JavaFX & SWT 1
MaxG. JavaFX Inhalt in Tableview wird nicht angezeigt AWT, Swing, JavaFX & SWT 11
T [Neuling] Textfeld Inhalt überprüfen und falsche Stellen als msg Ausgeben AWT, Swing, JavaFX & SWT 1
Kanda Sorata Inhalt einer .txt Datei einlesen und in ein Label einfügen (JavaFX) AWT, Swing, JavaFX & SWT 2
gamillton Swing JComboBox mit extra Inhalt + breiteres Popupmenü AWT, Swing, JavaFX & SWT 0
M Swing Inhalt meines JTables wird falsch dargestellt AWT, Swing, JavaFX & SWT 8
P TreeView automatisch an große von Inhalt anpassen AWT, Swing, JavaFX & SWT 3
U Swing Inhalt vom Fenster wird erst durch Hovern oder Klicken sichtbar AWT, Swing, JavaFX & SWT 3
G Menübar anklicken und Inhalt entsprechend wechseln AWT, Swing, JavaFX & SWT 4
A Nach klick auf Button neuen Inhalt im gleichen Fenster AWT, Swing, JavaFX & SWT 3
Z Swing Frame wird geöffnet, aber ist ohne Inhalt AWT, Swing, JavaFX & SWT 0
A JavaFX Von Klasse auf Controller Inhalt zugreifen AWT, Swing, JavaFX & SWT 9
V JScrollBar soll weiterscrollen, wenn Inhalt von JTextArea erweitert wird AWT, Swing, JavaFX & SWT 7
Tausendsassa Frame öffnet aber zeigt keinen Inhalt... AWT, Swing, JavaFX & SWT 10
A BorderLayout "Center" Inhalt wechseln AWT, Swing, JavaFX & SWT 1
D Swing JTable mit Inhalt aus XML-File AWT, Swing, JavaFX & SWT 3
A JFace/SWT: ListViewer Inhalt nach Selection in zweitem List Viewer aktualisieren! AWT, Swing, JavaFX & SWT 5
E JavaFX JavaFX - MenuItem erstellen aus dem Inhalt einer HashMap AWT, Swing, JavaFX & SWT 1
Z JavaFX Inhalt einer ViewTable durch Aktion einer Menubar ändern welche in einer anderen fxml ist AWT, Swing, JavaFX & SWT 4
M ausgewählte Inhalt von ListItem inn ComboBox in der Tabelle speichern AWT, Swing, JavaFX & SWT 0
E JavaFX Sehr viel und unterschiedlich Großen Inhalt auf einer "Fläche" ... Umsetzbar ? AWT, Swing, JavaFX & SWT 3
JAVAnnik JavaFX Inhalt der TreeCell nicht einrücken AWT, Swing, JavaFX & SWT 1
F AWT Drucken verschluckt inhalt AWT, Swing, JavaFX & SWT 1
S Inhalt der Java-Konsole in die JTextArea AWT, Swing, JavaFX & SWT 3
TheJavaKid JTextField: Reine Domain herausfiltern, sonst Inhalt löschen AWT, Swing, JavaFX & SWT 1
A Swing JLabel/JTextField Inhalt mit JSlider verändern AWT, Swing, JavaFX & SWT 12
OnDemand Inhalt des Frames ändern AWT, Swing, JavaFX & SWT 4
S SWT TableCell mit Composite als Inhalt / Höhe der Cell/Row AWT, Swing, JavaFX & SWT 5
3 Swing JList-Inhalt als verschlüsselte Datei schreiben und lesen AWT, Swing, JavaFX & SWT 1
C Swing Anzeigeproblem mit TableModels abhängig von deren Inhalt AWT, Swing, JavaFX & SWT 10
H Swing JScrollPane mit "viel Inhalt" scrollt zu langsam (inkl. See-For-Yourself.jar :D) AWT, Swing, JavaFX & SWT 2
I JTable Spalten automatisch dem Inhalt anpassen! AWT, Swing, JavaFX & SWT 6
P Swing Dialog zeigt keinen Inhalt in Verbindung mit JFrame AWT, Swing, JavaFX & SWT 18
0 JTable Spaltenbreite automatisch an Inhalt anpassne geht nicht AWT, Swing, JavaFX & SWT 3
M EditorPane Inhalt anders als er soll! AWT, Swing, JavaFX & SWT 2
S Swing JFormattedTextField - bei nicht korrekter Eingabe Inhalt überschreiben AWT, Swing, JavaFX & SWT 5
S Swing JFormattedTextfield markiert nicht gesamten Inhalt AWT, Swing, JavaFX & SWT 4
A 2D-Grafik Panel inhalt löschen AWT, Swing, JavaFX & SWT 5
H JCombobox inhalt löschen AWT, Swing, JavaFX & SWT 17
N Swing JCombobox - PopupMenu-Inhalt mit KSKB AWT, Swing, JavaFX & SWT 2
N Swing KomponentenHöhe an html-Inhalt anpassen AWT, Swing, JavaFX & SWT 4
S Inhalt einer JComboBox aktualisieren AWT, Swing, JavaFX & SWT 6
Nicklas2751 Table View zeigt keinen Inhalt nur leere Zeilen AWT, Swing, JavaFX & SWT 2
A JComboBox-Inhalt durch neues Array ersetzen AWT, Swing, JavaFX & SWT 2
D LayoutManager JScrollPane mit dynamischem Inhalt AWT, Swing, JavaFX & SWT 8
N Fehler Inhalt von JTable wird gelöscht AWT, Swing, JavaFX & SWT 5
C SWT Wie greife ich auf den Inhalt einer bestimmten Zeile zu? (TableViewer) AWT, Swing, JavaFX & SWT 7
H JFrame Inhalt neu aufbauen? AWT, Swing, JavaFX & SWT 8
M Beim Start von TableEditor Inhalt der Zelle markieren. AWT, Swing, JavaFX & SWT 2
T Inhalt von einem Tab an JTabbedPane größe ausrichten? AWT, Swing, JavaFX & SWT 2
TheWhiteShadow JList-Inhalt nach Änderung weg AWT, Swing, JavaFX & SWT 3
P Swing JScrollPane-Inhalt: Grösse anpassen AWT, Swing, JavaFX & SWT 6
0 JFrame zeigt Inhalt erst nach vergrößern an AWT, Swing, JavaFX & SWT 3
L JFrame an Paint-Inhalt anpassen AWT, Swing, JavaFX & SWT 6
A Swing JScrollPane zeigt keinerlei Inhalt an AWT, Swing, JavaFX & SWT 2
H Swing JPanel Inhalt wird bei verwenden von JPopup gelöscht AWT, Swing, JavaFX & SWT 5
C SWT Textfeld mit festem und variablen Inhalt AWT, Swing, JavaFX & SWT 13
X Swing JTable stets mit gleichem Inhalt öffnen AWT, Swing, JavaFX & SWT 3
O JTable mit Inhalt drucken AWT, Swing, JavaFX & SWT 3
L Inhalt einer table löschen AWT, Swing, JavaFX & SWT 2
C Swing Inhalt einer JTable aktualisieren und filten nach Feldern die nicht in der Tabelle sind AWT, Swing, JavaFX & SWT 3
lumo SWT ScrolledComposite maximierter inhalt AWT, Swing, JavaFX & SWT 2
K Tabellen Inhalt ( Zelle ) Modifizieren AWT, Swing, JavaFX & SWT 2
H Swing HTML in einem JEditorPane zeilenweise hinzufügen ohne Inhalt jedes Mal neu zu laden AWT, Swing, JavaFX & SWT 4
D Transparentes JFrame mit inhalt AWT, Swing, JavaFX & SWT 7
S Swing JTabbedPane: Inhalt soll oben links anfangen AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben