Posiadam obecnie grę JavaFX dla pojedynczego gracza. Chcę włączyć wielu graczy grających przez gniazda TCP, dla których mam prosty szkielet klienta/serwera napisany w Javie.Uruchom aplikację javaFX z kodu Java
Mój problem: kod serwera/klienta jest w języku Java. Jak uruchomić aplikację javafx z kodu klienta java, a następnie zaktualizować ją w oparciu o gamestate zwrócony z serwera?
Prosta pętla klient-klient będzie: klient wysyła akcję, serwer aktualizuje gamestate i odtwarza go z powrotem do klienta.
client pseudo-code
if(!clientGUI.isInitialised())
initJavaFXapp(); // I am struggling to do this
//keep reading from server
if(obj instanceOf gameState)
javaFXGUI.update(obj)
Jestem początkujący w użyciu javaFX, a ja wykorzystałem aspekt graficzny, ponieważ moja aplikacja jest oparta na nim.
Każda pomoc będzie mile widziana.
Dzięki. Ale jak mogę uzyskać wystąpienie klasy javafx? Czy mogę aktualizować komponenty za pomocą publicznych metod należących do klasy javafx? –
Dostaję również komunikat o błędzie "Wyjątek w wątku" główny "java.lang.RuntimeException: Błąd: klasa Project1.runJavaFX nie jest podklasą javafx.application.Application". Gdzie runJavaFX jest klasą java, a wewnątrz tego umieściłem aplikację Application.launch (TableGUI.class). gdzie tableGUI jest aplikacją javaFX. @SergeyGrinev –
po prostu ponownie sprawdzone, współpracuje z JavaFX 2.2 której wersji używasz? W każdym razie, jako obejście tego problemu, możesz stworzyć statyczną metodę w 'TableGUI', która wywoła' launch'. I wywołaj tę metodę z klasy 'runJavaFX'. –