1. 程式人生 > >java 使用html寫UI 做winform win桌面客戶端程式(一)

java 使用html寫UI 做winform win桌面客戶端程式(一)

大家好,今天給大家帶來使用java+html寫winform  win客戶端桌面程式的教程。

在讀本文之前你首先要能接受:

1   客戶端基於java+html所以 軟體包中需要包含 jre和 cef(chrome核心)的dll,軟體包比較大。

2  因為jcef 國內資料很少,java swing  和 awt對於GUI 的支援不是太爽,故本文使用 c# 版本的 cef,所以你最好學學c#的基礎語法(其實這貨和java差不多)

本方案的實現思路:

js 呼叫  c#  c# 呼叫 java 程式碼(通過http請求) , 因為本人寫了一個簡易的http伺服器,故無需tomcat jetty 依賴,只依賴一個log4j,如果你不需要log,可以吧log4j也移除掉。

如果寫一個java介面給js呼叫呢?

@JsObj(objName="test")
public class TestJsMethod
{
    public String hello(String args){
        return "hello " + args;
    }
}

首先用註解宣告我是一個js object  objName是什麼。

然後我裡面有一個 引數為string 返回為string的方法。

這樣一個介面就寫好了。

那麼如何呼叫呢?

在js裡面寫

alert(javaExe.exeJavaFun('{"jsObj":"test","jsMethod":"hello","jsParam":"wanglei"}'));

這樣就能打印出hello wanglei 來了。

http伺服器地址為8080,你們可以自己設定一個 在config.getServerPort 方法裡面

c# 這邊在javaCEF\TestJsCall\bin\Debug  superMarket.exe.config  裡面修改埠

如果你要換專案的圖示之類的,c#這邊也開源了,大家可以去下載。

如果有什麼問題可以諮詢我的QQ 921888199

C#  程式碼下載,http://download.csdn.net/detail/shuaizai88/9877752  最好裝一個vs 2013,如果沒有的話可以直接在debug 資料夾中使用已經編譯好的exe。

java 基礎框架下載。  

在正式打包給客戶的時候,一定記得要在c#程式碼中 呼叫命令啟動java程式。

http://download.csdn.net/detail/shuaizai88/9877764

相關推薦

java 使用htmlUI winform win桌面客戶程式()

大家好,今天給大家帶來使用java+html寫winform  win客戶端桌面程式的教程。 在讀本文之前你首先要能接受: 1   客戶端基於java+html所以 軟體包中需要包含 jre和 cef(chrome核心)的dll,軟體包比較大。 2 &

java 使用htmlUI winform win桌面客戶程式()

大家好,今天給大家帶來使用java+html寫winform  win客戶端桌面程式的教程。 在讀本文之前你首先要能接受: 1   客戶端基於java+html所以 軟體包中需要包含 jre和 cef(chrome核心)的dll,軟體包比較大。 2  因為jcef 國內

java輪子-使用springboot一個帶介面的web程式

上次是按照官方文件簡單的建立了一個spring boot 的專案,然而web工程不可避免的需要介面這種東西。所以這次,我們就來使用spring boot做一款帶介面的web程式。查了一些資料,首先spring boot官方是已經不推薦使用jsp來做頁面了,它們推

python---》客戶與服務的基礎(一個簡單的客戶與服務

python 今天我們分享的內容是python簡單的客戶端與服務端,此處僅介紹一些簡單的函數,並作出來一個玩兒玩兒。 在開始之前呢,先用一張圖表示他們之間的關系 我們來按照這個步伐依次介紹:服務端:import socketserver=socket.socket()#此處是為了創建

互聯網江湖,桌面客戶框架技術比武大會

時間 釘釘 c++實現 chromium frame qt開發 蜜蜂 底層 發出 By 技術怪咖 歐陽森林 導讀:在互聯網時代,如何將一個好的idea快速的轉化為產品,如何在原有產品中增加新的特性,是產品能夠快速的推向市場、快速占領的關鍵。因此,作為客戶端的架構選型,面臨哪

Java如何使套接字向單個客戶顯示消息?

server single args 客戶端 imp Language exce stream clas 在Java編程中,如何使用套接字向單個客戶端顯示消息? 以下示例演示了如何使用Socket類的ssock.accept()方法向單個套接字客戶端上顯示消息。 packa

Windows蘋果安卓手機遠端桌面客戶推薦

  適用於:Windows 10、Windows 8.1、Windows Server 2012 R2、Windows Server 2016 最近公司電腦從Windows7升級到了Windows10,然後看到有新版本的遠端桌面客戶端,以前Windows一直用到最多的是mstsc這個! 你

Qt5中QWebEngineView的使用,讓桌面客戶和web友好通訊

本文結構 1、 Qt5中web開發的基本配置,工程搭建 2、 載入HTML檔案 3、 Qt介面視窗呼叫HTML中的JavaScript函式(Qt呼叫js) 4、 Qt介面視窗獲取HTML中Js函式的返回值 5、 Web端訊息主動通知到Qt介面(js通知Qt) 6、完整原始碼路徑

Java網路程式設計7.TCP網路程式設計之客戶鍵盤錄入伺服器控制檯輸出

TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出 1、鍵盤錄入資料 BufferedReader br = new BufferedReader(new InputStreamReader(S

自己動手一個能操作redis的客戶

引言 redis大家在專案中經常會使用到。官網也提供了多語言的客戶端供大家操作redis,如下圖所示 但是,大家有思考過,這些語言操作redis背後的原理麼?其實,某些大神會說 只要按照redis的協議,傳送指定資料給redis,監聽返回值即可。 確實,

win10 uwp 使用 asp dotnet core 圖床伺服器客戶

本文告訴大家如何在 UWP 做客戶端和 asp dotnet core 做伺服器端來做一個圖床工具 伺服器端 從 win10 uwp 手把手教你使用 asp dotnet core 做 cs 程式 可以瞭解一個簡單的 asp dotnet core 程式是如

Java使用多執行緒實現Socket多客戶的通訊

 要想詳細瞭解socket,大家請自行百度,我這裡只簡單介紹。   在網路中,我們可以利用ip地址+協議+埠號唯一標示網路中的一個程序。而socket程式設計就是為了完成兩個唯一程序之間的通訊(一個是客戶端,一個是伺服器端),其中用到的協議是TCP/UDP協議,它們都屬於傳輸層的協議。   TCP是基於連

關於.net core使用nginx反向代理獲取客戶ip的問題

1、正常情況下.net core獲取客戶端ip是比較簡單的 /// <summary> /// 獲取客戶Ip /// </summary> /// <param name = "context" >&

Redis叢集監控及Redis桌面客戶

之前在生產環境部署了Redis叢集,一直苦於沒有工具監控,最近找了下網上推薦redmon和Redislive的比較多,查看了兩個專案的github,都幾年沒有更新,這兩個專案應該沒有人在維護了,如果哪位有更好的替代方案麻煩告知! 僅將自己的部署方案貼出來,以供自己翻查! 具

利用Axis2開發WebService(3)---用Java實現呼叫WebService的客戶程式

WebService是為程式服務的,只在瀏覽器中訪問WebService是沒有意義的。因此,在本節使用Java實現了一個控制檯程式來呼叫上一節釋出的WebService。呼叫WebService的客戶端程式碼如下: package client; impor

簡明Github使用教程(桌面客戶與網頁版)

一:下載github二:安裝GitHub下載之後點選進行安裝過程,安裝之後桌面上會有兩個圖示,如下圖 三:新建專案GitHub是圖形介面模式,Git Shell是命令列模式,在Windows系統下我們使用GitHub進行程式碼管理。1:開啟GitHub圖形介面,輸入使用者名稱

用Python的基於Tkinter 的FTP客戶

# -*- coding: utf-8 -*- from ftplib import FTP import os from Tkinter import * from tkFileDialog import * class FTP_Tkinter():

黑馬程式設計師 【】java學習之路——TCP(三)客戶上傳檔案到伺服器

import java.net.*; class  TextClient {public static void main(String[] args) throws Exception{Socket s = new Socket("192.168.1.104",10010);BufferedReader b

java學習之TCP客戶程式

—————————————————————————————————————————————————————————— 程式碼如下: tcpClient.java package reverseSe

java jsonrpc2.0 客戶程式

原始碼 package congpq.jsonrpc_test; import java.net.URL; import com.googlecode.jsonrpc4j.JsonRpcHttpCli