2013-03-05 58 views
2

我有一個傳統的Java swing應用程序(擴展JFrame並有一個主類),它使用JFreeCharts來實現一些製圖功能。我最近看到了JavaFX,並認爲這些圖表看起來非常清新,並會給我的用戶帶來更好的體驗。我希望將JavaFX圖表場景嵌入到jInternalFrame(反過來,從我的jDesktopPane調用)。在Swing應用程序中使用JavaFX圖表

我跟着一個關於如何創建一個javafx應用程序和一個javafx圖表的簡單教程,但我堅持如何讓我現有的代碼中的場景。我經歷的一個例子向我展示瞭如何實現這一點,但意味着將我的項目轉換爲擴展「應用程序」類的javafx。

我怎樣才能達到我想要的?是不是可以保留現有的JFrame作爲頂級類,只需將JFXPanel添加到我的內部框架即可。

任何幫助將是巨大的,請注意我經歷過一些教程,他們要求我到我的項目轉換爲JavaFX的 - 我只是想在我現有的Swing應用程序一個JavaFX場景。

非常感謝,

回答

5

您不需要將您的Swing應用程序轉換爲JavaFX應用程序。您可以將JavaFX Chart放置在可放置在Swing組件中的JFXPanel中。我鏈接的javadoc包含用於將Swing應用程序中嵌入JavaFX節點的示例代碼。

查看Oracle的官方指南JavaFX for Swing Developers

另請參閱SwingInteropEmbedding JavaFX in Swing樣本,以在Swing應用程序中嵌入圖表。該示例由Oracle根據BSD開源許可證提供,以便您可以在您的應用程序中使用它。儘管如此,我的建議,除非它是一個大型的,現有的Swing代碼庫,您只需要使用幾個JavaFX功能,那麼就是將您的應用程序編寫爲純JavaFX應用程序,而不是混合的Swing/JavaFX應用程序。

+0

鏈接已死亡。現在指向http://www.oracle.com/technetwork/java/javase/overview/javafx-samples-2158687.html – rpax 2016-02-19 11:08:18

+0

感謝rpax,我更新了答案的鏈接,指向引用多了起來-TO-新位置最新的文件和例子。 – jewelsea 2016-02-19 18:17:28