0

哪个是 awt/Swings 中显示网页和访问该组件中网页的最佳组件,没有任何问题,例如(javascript 的功能,页面中的图像应该显示良好,在浏览器上查看页面并支持作为具有所有功能的浏览器) 这里有一个关于它显示网页的教程,但它说,我们不能保证 JEditotPane 将作为浏览器提供。

您可以在该教程的最后一段中看到。我需要实现这一点,网页要显示在 awt/swings 中。我尝试了该链接中的示例,但收到消息:“请启用 javascript 显示”。

因此,任何人都可以指导我,关于在摆动/awt 上显示网页的最佳方法或任何替代方法。

更新 :

我已经下载了 Jbrowser 的 jar,并尝试了 Jbrowser 站点中的一个示例。但低于例外。

        import java.awt.Canvas;  
    import java.awt.Dimension;  
    import java.awt.Toolkit;  
    import javax.swing.JFrame;    
    import ru.atomation.jbrowser.impl.JBrowserComponent;  
    import ru.atomation.jbrowser.impl.JBrowserBuilder;  
    import ru.atomation.jbrowser.impl.JBrowserCanvas;  
    import ru.atomation.jbrowser.impl.JComponentFactory;  
    import ru.atomation.jbrowser.interfaces.BrowserManager;
public class GettingStartedSnippet {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize((int) (screenSize.getWidth() * 0.75f),
                (int) (screenSize.getHeight() * 0.75f));
        frame.setLocationRelativeTo(null);
        BrowserManager browserManager =   new JBrowserBuilder().buildBrowserManager();
        JComponentFactory<Canvas> canvasFactory = browserManager.getComponentFactory(JBrowserCanvas.class);
        JBrowserComponent<?> browser = canvasFactory.createBrowser();                    
        frame.getContentPane().add(browser.getComponent());          
        frame.setVisible(true);            
        browser.setUrl("http://code.google.com/p/jbrowser/");  

    }

}

这是我找到示例GettingStartedSnippet的链接

例外 :

Apr 18, 2012 3:42:11 PM ru.atomation.jbrowser.impl.JBrowserBuilder getXulRunnerPath
INFO: Unpacking mozilla to: D:\WorkSpaces\example\example\jbrowser
Apr 18, 2012 3:42:11 PM ru.atomation.xulnative.XulExtractor extract
SEVERE: Xulrunner archive not found in jar
Apr 18, 2012 3:42:11 PM ru.atomation.jbrowser.impl.JBrowserManager initialize
SEVERE: invalid current xulrunner location D:\WorkSpaces\example\example\jbrowser\xulrunner\xulrunner
Apr 18, 2012 3:42:11 PM ru.atomation.jbrowser.impl.JBrowserManager initialize
INFO: Continuing to search for other xulrunners
Apr 18, 2012 3:42:11 PM ru.atomation.jbrowser.impl.JBrowserManager initialize
SEVERE: failed to initialize mozilla
Throwable occurred: java.io.IOException: Unable to resolve XULRunner home location
    at ru.atomation.jbrowser.impl.JBrowserManager.initialize(JBrowserManager.java:118)
    at ru.atomation.jbrowser.impl.JBrowserManager.<init>(JBrowserManager.java:67)
    at ru.atomation.jbrowser.impl.JBrowserBuilder.buildBrowserManager(JBrowserBuilder.java:127)
    at GettingStartedSnippet.main(GettingStartedSnippet.java:23)

我浏览以找到解决方案,我无法为该问题找到合适的解决方案。请任何人都可以为我提供解决方案。

4

3 回答 3

4

..或任何替代方案。

使用实际的嵌入式浏览器。

例如

于 2012-04-18T09:21:29.520 回答
0

jbrowser使用的是 mozilla 项目的 xullrunner,所以 jbrowser 是 firefox 浏览器的包装器。

对于我的问题,我使用了 NativeSwing 库,这是我觉得最好的组件。通过这个我实现了将非 html 页面集成到 Swing 应用程序的网页。

于 2012-04-21T10:28:40.793 回答
0

1.首先下载jbrowser-linux-demo-with-sources.tar。2.然后创建名为“JbrowserDemo”的java应用程序。3.复制jbrowser-linux-demo-with-sources中的Xulrunner文件夹。4.粘贴到您的应用程序文件夹(JbrowserDemo)。5.然后运行您的应用程序“GettingStartedSnippet”

于 2013-12-10T05:30:25.237 回答