Discussion:
JavaFX: Starten eines konkreten Application-Objekts
(zu alt für eine Antwort)
Christian H. Kuhn
2019-01-03 01:40:05 UTC
Permalink
Liebe Gemeinde,

MVC-Muster. Der Controller erzeugt eine Instanz des Modells, die er dann
kennt. Das klappt.

Der View wird durch eine JavaFX-Application dargestellt. Der Controller
erstellt das Objekt gui, übergibt ein paar Daten, z.B. das Modell, und
will die Applikation dann starten.

Die regulären Startmöglichkeiten sind statisch. Durch
Application.launch() oder main() wird das vorgefertigte Objekt ignoriert.

Ein Application-Object hat eine start()-Methode. Die soll auf dem JavaFX
Application Thread ausgeführt werden. Also Platform.runLater, und dort
gui.start(). Toolkit not initialized.

Google gibt als Würgaround das Starten eines sonst nicht benutzten
JFXPanels, das dann die JavaFX runtime hochfährt, die dann zur Verfügung
steht. Hässlich. Ganz hässlich. Gibt es keine saubere Lösung?

TIA
QNo
Christian H. Kuhn
2019-01-03 12:43:50 UTC
Permalink
[JavaFX starten und Objekte kennen]
Ich habe http://blog.axxg.de/model-view-controller-mit-javafx/ gefunden.
Die starten mit einem eigenen Start-Objekt, das von Application erbt und
bei launch() JavaFX startet, dabei eine Stage bekommt und die speichert
und dann alle nötigen Objekte erzeugt. Scheint der Ansatz zu sein, den
ich brauche.

lg
QNo
Brix
2019-01-13 12:07:15 UTC
Permalink
Post by Christian H. Kuhn
Der View wird durch eine JavaFX-Application dargestellt. Der Controller
erstellt das Objekt gui, übergibt ein paar Daten, z.B. das Modell, und
will die Applikation dann starten.
Ich bin mir nicht sicher, aber es klingt irgendwie schräg, dass ein
einzelner View durch eine komplette Application dargestellt werden soll.

Also entweder du hast ne JFX-Application, die diverse Controller und
Views hat, dann ist dein Application.launch/start aber der Entry-POint
der gesamten Software, oder aber du hast ne Application (z.B. ne Swing-
Application), die mit JFX-Panels JXF-Inhalte einblendet.

Lies dir doch mal das hier durch, vielleicht hilft dir das:
https://stackoverflow.com/questions/32342864/applying-mvc-with-javafx


Gruß,
-Wanja-
--
..Alesi's problem was that the back of the car was jumping up and down
dangerously - and I can assure you from having been teammate to
Jean Alesi and knowing what kind of cars that he can pull up with,
when Jean Alesi says that a car is dangerous - it is. [Jonathan Palmer]
Christian H. Kuhn
2019-01-13 19:47:58 UTC
Permalink
Post by Brix
Post by Christian H. Kuhn
Der View wird durch eine JavaFX-Application dargestellt. Der Controller
erstellt das Objekt gui, übergibt ein paar Daten, z.B. das Modell, und
will die Applikation dann starten.
Ich bin mir nicht sicher, aber es klingt irgendwie schräg, dass ein
einzelner View durch eine komplette Application dargestellt werden soll.
Inzwischen habe ich das auch geändert. Ich hatte in allen bisherigen
Beispielen vorgeführt bekommen, dass die Application die
GUI-Bestandteile enthält. Das ist aber gar nicht nötig. Inzwischen
benutze ich eine Starterklasse (das ist dann die Application), und die
startet außer dem JavaFX-Framework auch die MVC-Bestandteile.
Post by Brix
https://stackoverflow.com/questions/32342864/applying-mvc-with-javafx
Werde ich, vielen Dank.

mfg
QNo

Lesen Sie weiter auf narkive:
Loading...