[英]Is it possible to create java applets using JavaFx?
我想使用Javafx Scene Builder創建一個applet。 我知道創建小應用程序的傳統方法,但是最近我開始使用JavaFx,我愛上了可以使用Scene Builder創建出色的用戶界面設計然后編寫簡潔的自定義代碼的方法。 因此,到目前為止,我可以使用JavaFx創建桌面程序,但是現在我想編寫小型實用程序並將其嵌入瀏覽器中。 老實說,我不喜歡編寫代碼來創建小程序的UI的想法,因此我在考慮是否存在使用Javafx創建小程序的方法。
PS-我是Stackoverflow的新手。 因此,請原諒我犯的任何錯誤。
小程序是一項過時的技術,因此您應該完全忘記它們。 至少在最新的Chrome瀏覽器中以及最有可能的其他瀏覽器中,都已刪除了對applet的支持。
也不能通過JavaFX創建小程序。
JFXPanel
可以完成此操作,該JFXPanel
允許將JavaFX
組件嵌入到Swing
組件中,並且可以從Swing
組件中輕松創建Applet
。
這是一個將Java FX
Rectangle
繪制到Applet
的示例:
public class Main extends Applet {
private void initAndShowGUI() {
// This method is invoked on Swing thread
final JFXPanel fxPanel = new JFXPanel();
fxPanel.setPreferredSize(new Dimension(100, 100));
add(fxPanel);
setVisible(true);
Platform.runLater(
new Runnable() {
@Override
public void run() {
initFX(fxPanel);
}
}
);
}
private static void initFX(JFXPanel fxPanel) {
// This method is invoked on JavaFX thread
final Scene scene = createScene();
fxPanel.setScene(scene);
}
private static Scene createScene() {
final Rectangle rectangle = new Rectangle(100.0, 100.0);
rectangle.setFill(Color.BLACK);
return new Scene(new VBox(rectangle));
}
@Override
public void init() {
SwingUtilities.invokeLater(
new Runnable() {
@Override
public void run() {
initAndShowGUI();
}
}
);
}
}
但是, Applet已過時 ,將很快被刪除,因此,如果您可以避免使用它們,請不要使用它們。 或者,您可以使用Deployment Toolkit library
將JavaFX application
嵌入到網頁中,或從瀏覽器中啟動它,有關此方法的更多詳細信息,請參見此處 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.