我试图在Java FX WebView中显示Java Applet。 但是,据我所知,这是不可能的。

没有Java FX WebView,我怎样才能做到这一点?

#1楼 票数:3 已采纳

我以前搞过这个。 由于性能问题,我最终放弃了JavaFX作为我正在制作的视频游戏的Java Applet,但它仍然有效用于许多其他目的。 这是我使用的配置。

<html><head>
  <SCRIPT src="http://java.com/js/dtjava.js"></SCRIPT>
<script>
    function launchApplication(jnlpfile) {
        dtjava.launch(            {
                url : 'MyGame.jnlp'
            },
            {
                javafx : '2.2+'
            },
            {}
        );
        return false;
    }
</script>

<script>
    function javafxEmbed() {
        dtjava.embed(
            {
                url : 'MyGame.jnlp',
                placeholder : 'javafx-app-placeholder',
                width : 1024,
                height : 768
            },
            {
                javafx : '2.2+'
            },
            {}
        );
    }
    <!-- Embed FX application into web page once page is loaded -->
    dtjava.addOnloadCallback(javafxEmbed);
</script>

</head><body>
<h2>Test page for <b>MyGame</b></h2>
  <b>Webstart:</b> <a href='MyGame.jnlp' onclick="return launchApplication('MyGame.jnlp');">click to launch this app as webstart</a><br><hr><br>

  <!-- Applet will be inserted here -->
  <div id='javafx-app-placeholder'></div>
</body></html>

我用JNLP来做这件事。 这是我的JNLP文件。

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0" xmlns:jfx="http://javafx.com" href="MyGame.jnlp">
  <information>
    <title>MyGame</title>
    <vendor>Jose</vendor>
    <description>Sample JavaFX 2.0 application.</description>
    <icon href="C:\Users\jose\Dropbox\MyGame\java7\MyGame/MyGame.ico" />
    <offline-allowed/>
  </information>
  <resources>
    <jfx:javafx-runtime version="2.2+" href="http://javadl.sun.com/webapps/download/GetFile/javafx-latest/windows-i586/javafx2.jnlp"/>
  </resources>
  <resources>
    <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/>
    <jar href="MyGame.jar" size="27670609" download="eager" />
  </resources>
  <applet-desc  width="1024" height="768" main-class="com.javafx.main.NoJavaFXFallback"  name="MyGame" >
    <param name="requiredFXVersion" value="2.2+"/>
  </applet-desc>
  <jfx:javafx-desc  width="1024" height="768" main-class="game.Game"  name="MyGame" />
  <update check="background"/>
</jnlp>

希望这可以帮助。 如果您有任何后续问题,请告诉我。

#2楼 票数:1

JavaFX Web View不支持applet,因此它不适合您。 您应该考虑另一个可嵌入的浏览器,如NativeSwing中的JCEFJWebBrowser或其他组件

#3楼 票数:0

您可以使用sun.applet.AppletViewer通过webview打开applet。 通过AppletViewer,您可以了解自己将如何做。

这是您找到的URL - http://www.docjar.com/html/api/sun/applet/AppletViewer.java.html

我希望它会对你有所帮助

  ask by Maeh translate from so

未解决问题?本站智能推荐:

2回复

自动填充Java中的WebView字段

所以这是我的问题。 我正在使用JavaFX中的WebView类。 我想要做的是,我希望webview中加载的字段自动填充存储在数组中的信息。 可能吗? 提前致谢
2回复

使用Java和JavaFX在WebView中设置文本颜色

使用JavaFX,我在一个场景中创建了一个按钮,用于打开output.txt文件。 现在,当我尝试从webView打开txt文件时,我看到的显示颜色是浅灰色。 如何强制颜色为黑色或其他任何颜色。 这是文本外观的屏幕截图。
3回复

在JavaFX中静音WebView,有可能吗?

非常简单。 是否可以静音或控制JavaFX WebView的音量? 我用谷歌搜索了一段时间,但我找不到任何提及。 我查看了WebView和WebEngine的代码,似乎没有任何关于控制音量的内容。 我仍然需要在同一个应用程序中的其他MediaPlayer工作和产生声音,所以,我不能将整
5回复

JavaFX中WebView的性能

我有一个HTML5用户界面和一个Java后端,并希望避免在普通的java中重建HTML ui,所以我的想法是运行本地网络服务器并使用webview在“原生”窗口中呈现它。 解决方案似乎是使用可以嵌入摇摆的JavaFX WebView。 在纸上听起来很棒(特别是因为他们声称使用的是WebKit
2回复

在webView中触摸事件-JavaFX

我正在制作一个JavaFX GUI应用程序,它使用javafx webview类。 现在,我可以用Java显示网页了。 现在,我想让网页响应不同的触摸事件。 我很确定我必须针对不同类型的事件对其进行自定义,就像固定移动和删除一样,就像单击,而拖动则是滚动。 实际上,我并不是完全使用触摸屏
1回复

JavaFX阶段中的WebView大小

我想更改JavaFx应用程序的Stage和WebView的大小。 我可以更改窗口大小,但浏览器大小不会从800px增加,因此html页面的显示不适合所有窗口。 它看起来像这样(注意右边的浅灰色区域): 这是页面的一些代码:
1回复

JavaFX在FXML文档中打开WebView

我可以使用JavaFX WebEngine和WebView成功地打开一个显示html文档/ URL的WebView,但是我想在FXML文档中与其他元素(如按钮和ImageView)一起打开WebView。 我的目标是拥有一个GUI,该GUI可以在WebView对象内部显示带有html文档的图像
1回复

webview没有打开javafx中的弹出窗口

我正在尝试使用javafx在webview中打开一个网页。 单击超链接时,此网页会打开一个新的弹出窗口 如何打开新的弹出窗口,当尝试在默认的Web浏览器中打开相同的网页,如Chrome,IE,他们正在打开弹出窗口。 为了创建弹出窗口,我使用以下代码。