如何使用HTML和CSS作为Java应用程序GUI?

前端之家收集整理的这篇文章主要介绍了如何使用HTML和CSS作为Java应用程序GUI?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想用一个干净的GUI设计出新的Git客户端.

在Java应用程序中是否可以使用HTML,CSS和JavaScript的强大功能

我想使用Java JGit的模型,Java的控制器和HTML CSS JavaScript的视图.

我不想要一个客户端 – 服务器模型.我想很好地整合Java和HTML. DOM事件将直接将事件触发到Java控制器.这样就可以创建丰富的离线应用程序.

解决方法

您可以将Web浏览器组件嵌入到Java Swing / JavaFX Desktop应用程序中,该应用程序将显示使用HTML5 CSS JavaScript构建的GUI.您可以看到一篇文章,介绍如何在 http://java.dzone.com/articles/htmlcssjavascript-gui-java-0执行此操作

允许将Chromium嵌入Java应用程序的Java Swing / JavaFX库之一是JxBrowser.使用JxBrowser API,您可以加载任何网页并使用其DOM和JavaScript.您甚至可以从JavaScript代码调用Java方法,反之亦然.例如:

import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.JSFunctionCallback;
import com.teamdev.jxbrowser.chromium.JSObject;
import com.teamdev.jxbrowser.chromium.JSValue;
import com.teamdev.jxbrowser.chromium.events.FinishLoadingEvent;
import com.teamdev.jxbrowser.chromium.events.LoadAdapter;

public class JavaScriptJavaSample {
    public static void main(String[] args) {
        Browser browser = new Browser();
        browser.addLoadListener(new LoadAdapter() {
            @Override
            public void onFinishLoadingFrame(FinishLoadingEvent event) {
                if (event.isMainFrame()) {
                    Browser browser = event.getBrowser();
                    JSObject window = (JSObject)
                            browser.executeJavaScriptAndReturnValue("window");
                    window.setProperty("MyFunction",new JSFunctionCallback() {
                        @Override
                        public Object invoke(Object... args) {
                            for (Object arg : args) {
                                System.out.println("arg = " + arg);
                            }
                            return "Hello!";
                        }
                    });
                    JSValue returnValue = browser.executeJavaScriptAndReturnValue(
                            "MyFunction('Hello JxBrowser!',1,2,3,true);");
                    System.out.println("return value = " + returnValue);
                }
            }
        });
        browser.loadURL("about:blank");
    }
}
原文链接:/html/231299.html

猜你在找的HTML相关文章