递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 3507|回复: 72
打印 上一主题 下一主题

[类库封装] [0612]webUI库-使用AI写webUI,无需前端知识,简单易用

  [复制链接]

17

主题

143

帖子

1697

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
1697
QQ
跳转到指定楼层
楼主
本帖最后由 aixunsoft 于 2026-6-12 01:45 编辑

使用webview2,WebView2Loader静态库来自nuget

优势
0.纯源码 - 除了WebView2Loade静态库,其他都是纯源码。
1.体积小 - 仅依赖WebView2Loade静态库,不依赖MFC,编译后体积小。
2.单文件 - 不依赖外部动态库,所有网页资源直接打包进exe,最终产物只有一个exe文件,整个运行过程无写出文件,并且体积小。
3.简单 - 不需要学习前端知识(只需要会简单使用浏览器的开发者工具获取元素路径即可),使用AI生成的网页UI可直接使用,习惯类似MFC。
4.高效 - 非使用主流的网页消息通讯,直接暴露本身的com对象给WebView2,通讯更高效。
5.灵活 - 交互简单,稍微会一些前端知识可以把任何组件封装成火山组件,火山端全部改成了同步模式,更简单,仅网页端调用火山方法使用异步。
6.美观 - 默认使用无边框可调节大小窗口,并且可以设置透明度,在火山简单设置可以使用网页元素作为标题栏和控制按钮。
7.多窗口 - 可以同时创建多个窗口,包括主窗口/子窗口/对话框。主窗口和子窗口可以同时存在n个。


缺点
1.WebView2对老系统兼容不好,甚至缺少环境,但是可以带上环境,或者创建失败后在线下载环境。
2.暂时无设计器,需要自己声明组件变量和编写初始化代码,使用的人多的话后期再开发(主要由AI写前端,只需要人工简单在设计器设置)。3.无边框窗口使用了系统自带的阴影,在不同系统和系统设置下,已经修改一些代码,但是我没有异常的机器测试。

源码模块简介
窗口类 - windows窗口的各种操作,包括常用窗口操作,全屏 闪烁 托盘图标 时钟,透明度等等。
UI类 - WebView2封装 用于加载页面,可以绑定火山动态或静态方法给网页端调用(异步),并且可以设置返回值,也可以执行JS并且获取返回值。
元素类 - 用于绑定网页元素(绑定后类似MFC那样用),按需注册事件。

演示(前端由deepseek网页版生成,没有任何手动修改,没有手写任何前端代码)

编译后演示
0.两个子窗口发布版,单exe,1MB不到


调用源码
1.声明窗口成员变量

2.注册资源(把网页资源打包进exe,开发设计器后无需手写这部分代码)

3.载入主窗口后启用消息循环

4.在自己的窗口类中声明组件变量(和MFC类似,开发设计器后无需手动声明,元素属性需要在开发者工具中,选中要绑定的元素,右键,复制-复制JS路径)

5.在载入完毕事件中初始化组件(开发设计器后无需手动初始化,主要是绑定当前UI类,设置部分组件的特殊类型,控制按钮,标题栏等,还有注册组件事件)

6.处理事件(和MFC那样在事件中写自己的代码,也可以操作网页元素)


模块(源码)/样例下载
非AI开发(仅使用AI网页版cha询过webview2少量资料),古法手搓,免费开源无限制,请尊重版权,使用源码请注明来源。
20260212 - 0.2版本
1.重新架构事件,避免一些操作下发生死锁卡死。
2.组件类改为元素类,完善元素事件,元素类无需扩展即可绑定大部分元素的操作,复杂元素可以用元素类扩展,事件按需注册,提高性能。
3.标题栏弃用webview2自带模式,试用windows消息实现,避免部分老版本sdk不兼容。
4.部分机器有白边的情况修改了一些代码,但是我电脑都正常,无法测试。
5.默认禁止拖拽,需要绑定元素后手动开启允许接收拖拽,暂时不能拖拽文件到界面。
6.强制开启DPI缩放,避免高分屏字体模糊和创建webview2失败,但是建议在项目属性中开启,不然窗口大小可能会异常。
游客,如果您要查看本帖隐藏内容请回复







本帖被以下淘专辑推荐:

交流群95838248
回复

使用道具 举报

9

主题

370

帖子

2207

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
2207
沙发
发表于 7 天前 | 只看该作者
感谢开源
回复

使用道具 举报

26

主题

516

帖子

4140

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
4140
板凳
发表于 7 天前 | 只看该作者
这个回调看着挺不错吖
回复

使用道具 举报

26

主题

516

帖子

4140

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
4140
地板
发表于 7 天前 | 只看该作者


Windows10 有三条白边

回复

使用道具 举报

17

主题

143

帖子

1697

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
1697
QQ
5#
 楼主| 发表于 7 天前 | 只看该作者
本帖最后由 aixunsoft 于 2026-6-6 05:41 编辑
fengyishen 发表于 2026-6-6 05:11
Windows10 有三条白边

新上传了一个版本,你试试新的
交流群95838248
回复

使用道具 举报

2

主题

25

帖子

283

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
283
6#
发表于 7 天前 | 只看该作者
大佬隔 早上好
回复

使用道具 举报

17

主题

143

帖子

1697

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
1697
QQ
7#
 楼主| 发表于 7 天前 | 只看该作者

早上好啊,大佬隔
交流群95838248
回复

使用道具 举报

60

主题

587

帖子

2239

积分

银牌会员

Rank: 6Rank: 6

积分
2239
QQ
8#
发表于 7 天前 | 只看该作者
优秀,这就是未来的界面,前端用HTML作界面,后端对接任何编程语言功能
Q 75520266
回复

使用道具 举报

0

主题

56

帖子

446

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
446
9#
发表于 7 天前 | 只看该作者
学习学习学习学习
回复

使用道具 举报

50

主题

396

帖子

4081

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
4081
10#
发表于 7 天前 | 只看该作者
666
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2026-6-13 22:37 , Processed in 0.099255 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表