/ / Usando o JavaFX Chart no Swing Application - java, swing, javafx, jfreechart

Usando o JavaFX Chart no Swing Application - java, swing, javafx, jfreechart

Eu tenho um aplicativo Java swing tradicional(estende o JFrame e tem uma classe principal) que usa o JFreeCharts para algumas funcionalidades de gráficos. Recentemente, vi o JavaFX e acho que esses gráficos parecem muito atualizados e proporcionarão aos usuários uma experiência melhor. Desejo inserir uma cena de gráfico do JavaFX em um jInternalFrame (que, por sua vez, é chamado de meu jDesktopPane).

Eu segui um tutorial simples sobre comoCrie um aplicativo javafx e um gráfico javafx, mas estou preso a como obtenho a cena dentro do meu código existente. Um exemplo que passei me mostra como conseguir isso, mas significa converter meu projeto para um javafx que estende a classe "application".

Como posso conseguir o que quero? Não é possível manter meu JFrame existente como a classe de nível superior e simplesmente adicionar um JFXPanel ao meu jinternalframe.

Qualquer ajuda seria ótima, observe que eu já passei por alguns tutoriais e eles exigem que eu converta meu projeto para javafx - eu simplesmente quero uma cena javafx no meu aplicativo de swing existente.

Muito Obrigado,

Respostas:

5 para resposta № 1

Você não precisa converter seu aplicativo Swing em um aplicativo JavaFX. Você pode colocar um JavaFX Chart em um JFXPanel que pode ser colocado em um componente Swing. O javadoc I vinculado inclui código de amostra para incorporar um nó JavaFX em um aplicativo Swing.

Revise o oficial JavaFX for Swing Developers trilha de tutorial do Oracle.

Veja também o Incorporando o JavaFX no Swing amostra de SwingInterop para incorporar um gráfico em um aplicativo Swing. O exemplo é fornecido pela Oracle sob a licença de código aberto BSD para que você possa usá-lo em seu aplicativo.

Apesar de tudo isso, meu conselho, a menos que seja umO grande e existente código base do Swing, no qual você deseja apenas usar alguns recursos do JavaFX, é gravar seu aplicativo como um aplicativo JavaFX puro, em vez de um aplicativo Swing / JavaFX misto.