开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 11469|回复: 160
收起左侧

[易语言纯源码] 窗体客户区扩展v2.9.3【Windows11无边框圆角】

  [复制链接]
结帖率:80% (8/10)
发表于 2023-7-6 21:46:37 | 显示全部楼层 |阅读模式   甘肃省兰州市
分享源码
界面截图: -
是否带模块: -
备注说明: -
本帖最后由 荼泱 于 2023-7-7 20:28 编辑

实现窗口效果

可以让无边框窗口在win11系统更加美观,符合系统ui逻辑。

圆角是 Windows 11 几何的最显而易见的特征。 在 Windows 11 上,系统会将所有收件箱应用(包括所有 UWP 应用)和大多数其他应用的顶级窗口自动设为圆角。
但可能不会对某些 Win32 应用 ( 无边框窗口 ) 执行圆角操作。

实现效果

易窗口要在Win11有圆角必须自绘圆角,但是自绘的圆角是不符合系统圆角UI逻辑的,或者使用带有标题栏的窗口。
而使用本窗口则可以一键让你的任何窗口在Win11中让系统绘制圆角,并让系统绘制窗口阴影

4b950a3ded418a5a6e0838beb541a888.png

扩展前后对比

QQ截图20230707123322.png
QQ截图20230707123308.png

注意事项

  • 使用后窗口内不再是内容区,没有组件覆盖的区域全部为标题栏区域。
    标题栏区域与普通软件标题栏功能一致:右键菜单、双击最大化/还原、拖拽
  • 圆角仅在Win11系统可用,由系统绘制不可自定义。
  • 窗口阴影由系统绘制不可自定义,系统属性-高级-性能-视觉效果 中勾选 在窗口下显示阴影 系统就会为窗口绘制阴影。
  • 模块有两种扩展模式,如果默认情况下扩展窗口显示异常,请开启迟扩展

版本 2.9.3

  • 修复鼠标在调整边框区域右键展开标题栏菜单问题。
  • 修复创建完窗口内容显示异常,不会不刷新页面的问题

下载

winexpansion.zip (942.15 KB, 下载次数: 179)

点评

如果你的窗口使用本模块窗口显示异常,请开启迟扩展。   甘肃省兰州市  发表于 2023-7-7 12:26

评分

参与人数 8好评 +6 精币 +10 收起 理由
sksksz + 1 + 1 支持开源~!感谢分享
qq1056123185 + 1 + 2 Win10怎么才能有这么完美的圆角?
yqdyqzdstrm + 1 支持开源~!感谢分享
by626 + 1 支持开源~!感谢分享
易语言资源网 + 1 + 3 开源精神必须支持~
※逍遥游※ + 1 感谢分享,很给力!~
ppppzj + 2 YYDS~!
光影魔术 + 1 + 1 支持开源~!感谢分享

查看全部评分


本帖被以下淘专辑推荐:

结帖率:100% (1/1)

签到天数: 20 天

发表于 2023-7-7 12:39:56 | 显示全部楼层   北京市北京市
@荼泱

看到你源码的自定义类型里:
“ 窗口删除标准帧 不清楚啥意思,自己看微软文档 ”

于是找到下面这么一篇:

使用 DWM 的自定义窗口帧
https://learn.microsoft.com/zh-cn/windows/win32/dwm/customframe?redirectedfrom=MSDN

里面有一句:
    帧扩展是在 WM_ACTIVATE 消息而不是 WM_CREATE 消息中完成的
而你的源码中,帧扩展是在 WM_SIZE 中完成的

另外发现了一个小问题:
    margins.顶边 = GetPropA (Hwnd, “AD_WinEx_MarginRight”)
    margins.右边 = GetPropA (Hwnd, “AD_WinEx_MarginTop”)
应该是下面这样吧:
    margins.顶边 = GetPropA (Hwnd, “AD_WinEx_MarginTop”)
    margins.右边 = GetPropA (Hwnd, “AD_WinEx_MarginRight”)
为了看懂源码,汉化了一些英文,删除了些无用的代码,还加了不少注释
还改了下模块的调用方式(一句就行)
说实话,还是没看懂,哈哈!


辛苦半天,就附上小修的源码: winexpansion - 0.1.e (148.33 KB, 下载次数: 53)

点评

他这个作为参考看看就行了,如果按它文档的方式去做会有很多问题,我这个是由***作者参考谷歌浏览器源码扩展的。   甘肃省兰州市  发表于 2023-7-7 12:42
回复 支持 1 反对 0

使用道具 举报

结帖率:80% (8/10)

签到天数: 18 天

 楼主| 发表于 2024-4-19 10:52:55 | 显示全部楼层   甘肃省兰州市
本帖最后由 荼泱 于 2024-4-19 10:54 编辑
荼泱 发表于 2024-4-19 10:21
自己处理一下模块中的窗口风格

winexpansion.zip (12.88 KB, 下载次数: 8)
回复 支持 反对

使用道具 举报

发表于 2024-5-19 09:35:42 | 显示全部楼层   吉林省长春市
66666666   
回复 支持 反对

使用道具 举报

结帖率:0% (0/3)

签到天数: 1 天

发表于 2024-4-27 16:57:20 | 显示全部楼层   浙江省宁波市
goodgoodgoodgoodgoodgood
回复 支持 反对

使用道具 举报

结帖率:0% (0/3)

签到天数: 1 天

发表于 2024-4-27 16:56:49 | 显示全部楼层   浙江省宁波市
goodgoodgoodgoodgoodgoodgoodgoodgoodgood
回复 支持 反对

使用道具 举报

结帖率:82% (18/22)

签到天数: 5 天

发表于 2024-4-19 14:41:14 | 显示全部楼层   河南省郑州市
sksksz 发表于 2024-4-19 12:49
还有2个问题  一个是扩展后 在主窗口启动一个 对话框模式的新窗口 新窗口不能一直保持在最前面 导致单击主 ...

不要意思 没有这个问题 是我加载了另外一个模块导致了这个问题 非常完美
回复 支持 反对

使用道具 举报

结帖率:82% (18/22)

签到天数: 5 天

发表于 2024-4-19 12:49:44 | 显示全部楼层   河南省郑州市
本帖最后由 sksksz 于 2024-4-19 15:01 编辑

牛逼6666666
回复 支持 反对

使用道具 举报

结帖率:82% (18/22)

签到天数: 5 天

发表于 2024-4-19 12:43:49 | 显示全部楼层   河南省郑州市
荼泱 发表于 2024-4-19 10:52
修复了固定窗口边框风格不能最小化的这个问题

感谢 这下完美了
回复 支持 反对

使用道具 举报

结帖率:82% (18/22)

签到天数: 5 天

发表于 2024-4-19 12:38:02 | 显示全部楼层   河南省郑州市
荼泱 发表于 2024-4-19 10:21
自己处理一下模块中的窗口风格

尝试了一下 技术不行还得你来解决啊
回复 支持 反对

使用道具 举报

结帖率:80% (8/10)

签到天数: 18 天

 楼主| 发表于 2024-4-19 10:21:34 | 显示全部楼层   甘肃省兰州市
本帖最后由 荼泱 于 2024-4-19 10:51 编辑
sksksz 发表于 2024-3-25 13:14
扩展后点击任务栏图标不能将窗口最小化了

自己处理一下模块中的窗口风格
回复 支持 反对

使用道具 举报

结帖率:82% (18/22)

签到天数: 5 天

发表于 2024-3-25 13:14:55 | 显示全部楼层   河南省郑州市
扩展后点击任务栏图标不能将窗口最小化了
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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