赞
踩
我们使用go-sciter,就不得不提Sciter,Sciter 是一个嵌入式的 HTML/CSS/脚本引擎,旨在为桌面应用创建一个 UI 框架层。
说简单点就是我们通过它可以像写GUI。
第一步:从地址下载sciter-sdk
解压,找到
sciter-sdk\bin\64\sciter.dll
复制到
c:\Windows\System32
TIPS:
上面的请根据你的系统选择相应文件
第二步:由于使用到cgo,所以Window下需要安装Mingw
下载地址:
https://sourceforge.net/projects/mingw/files/
安装可以参考cygwin
也可以直接下载对应文件,把mingw\bin,添加到path里。
go get -u github.com/sciter-sdk/go-sciter
如果是设置了 gomodule111=on的注意参考这篇:
输入以下代码:
go mod init go-sciter
go mod edit -require github.com/sciter-sdk/go-sciter@latest
demo_one.go代码如下:
package main import ( "github.com/sciter-sdk/go-sciter" "github.com/sciter-sdk/go-sciter/window" "log" ) func main() { //创建window窗口 //参数一表示创建窗口的样式 //SW_TITLEBAR 顶层窗口,有标题栏 //SW_RESIZEABLE 可调整大小 //SW_CONTROLS 有最小/最大按钮 //SW_MAIN 应用程序主窗口,关闭后其他所有窗口也会关闭 //SW_ENABLE_DEBUG 可以调试 //参数二表示创建窗口的矩形 w, err := window.New(sciter.SW_TITLEBAR| sciter.SW_RESIZEABLE| sciter.SW_CONTROLS| sciter.SW_MAIN| sciter.SW_ENABLE_DEBUG, nil); if err != nil { log.Fatal(err); } //加载文件 w.LoadFile("demo1.html"); //设置标题 w.SetTitle("你好,世界"); //显示窗口 w.Show(); //运行窗口,进入消息循环 w.Run(); }
demo_one.html代码如下:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
</head>
<h1>
Let's Start.
</h1>
<body>
Hello World!
</body>
</html>
demo_two.go代码如下:
package main import ( "github.com/sciter-sdk/go-sciter" "github.com/sciter-sdk/go-sciter/window" "log" ) func main() { //创建window窗口 //参数一表示创建窗口的样式 //SW_TITLEBAR 顶层窗口,有标题栏 //SW_RESIZEABLE 可调整大小 //SW_CONTROLS 有最小/最大按钮 //SW_MAIN 应用程序主窗口,关闭后其他所有窗口也会关闭 //SW_ENABLE_DEBUG 可以调试 //参数二表示创建窗口的矩形 w, err := window.New(sciter.SW_TITLEBAR| sciter.SW_RESIZEABLE| sciter.SW_CONTROLS| sciter.SW_MAIN| sciter.SW_ENABLE_DEBUG, //给窗口设置个大小 &sciter.Rect{Left: 0, Top: 0, Right: 500, Bottom: 500}); if err != nil { log.Fatal(err); } //加载文件 w.LoadFile("demo2.html"); //设置标题 w.SetTitle("表单"); //显示窗口 w.Show(); //运行窗口,进入消息循环 w.Run(); }
demo_two.html代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>表单</title> <style> table { width: 100%; border-collapse: collapse; } table td { padding: 10px; border: 1px solid #ccc; } table td:first-child { white-space:nowrap; } </style> </head> <body> <form action=""> <table> <tr> <td>用户名:</td> <td><input type="text"></td> </tr> <tr> <td>昵称:</td> <td><input type="text"></td> </tr> <tr> <td>密码:</td> <td><input type="password"></td> </tr> <tr> <td>性别:</td> <td> <input type="radio" value="0">男 <input type="radio" value="1">女 </td> </tr> <tr> <td>爱好:</td> <td> <input type="checkbox" value="">看书 <input type="checkbox" value="">打球 <input type="checkbox" value="">旅游 </td> </tr> <tr> <td>简介:</td> <td> <textarea name="" id="" cols="30" rows="10"></textarea> </td> </tr> <tr> <td></td> <td><input type="submit" value="提交"></td> </tr> </table> </form> </body> </html>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。