1

我最近刚刚在我的游戏中添加了更新日志。我正在使用 tumblr 显示更新消息。我使用了简单的代码(如下所列)来展示它,但是当我运行它时,它看起来和原来的 tumblr 完全不同!

package javaapplication32;

import javax.swing.*;

public class GetWebPage {
    public static void main(String args[]) throws Exception {
      JEditorPane website = new JEditorPane("http://smo-gram.tumblr.com/");
      website.setEditable(false);

      JFrame frame = new JFrame("Google");
      frame.add(new JScrollPane(website));
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setVisible(true);
      frame.pack();
    }

}
4

3 回答 3

2

查看http://java.dzone.com/articles/web-browser-your-java-swing

JxBrowser 允许您通过将浏览器嵌入到您的 Swing 应用程序中来显示任何网页。

于 2013-09-24T21:46:30.587 回答
1

还有一些其他选项可用。如果您需要 HTML5 支持,请切换到 JavaFX(它比 Swing IMO 好得多)。还有一个可用于 Swing 的 HTML4/CSS2 渲染器,称为 Cobra,它看起来相当不错。另一种选择是Frostwire JWebBrowser,如果您不介意包含本机代码,它似乎在 Swing 中为您提供了完整的 HTML5 和 CSS3。

于 2013-09-24T22:26:40.880 回答
1

删除方法的调用pack()。另一方面,不要对 HTML Swing 有太多期望。最高支持 HTML 3.2 ( http://www.w3.org/TR/REC-html32.html )。

import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JScrollPane;

public class GetWebPage {
    public static void main(String args[]) throws Exception {
        JEditorPane website = new JEditorPane("http://smo-gram.tumblr.com/");
        website.setEditable(false);
        JFrame frame = new JFrame("Google");
        frame.add(new JScrollPane(website));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(800, 600);
        frame.setVisible(true);
    }
}
于 2013-09-24T21:46:24.330 回答