递归火山软件开发平台
标题:
MFC原生窗口实现透明渐变_续集3
[打印本页]
作者:
jcos
时间:
8 小时前
标题:
MFC原生窗口实现透明渐变_续集3
谢谢 @RMJ
https://bbs.voldp.com/thread-30109-1-1.html
无私分享
我好少逛火山,ai时代人也变懒了
刚好看到这个扩展组件觉得挺好看的,看到滚动条是系统默认的样式,于是改改。
MFC扩展界面支持类库2 —— 滚动条重做版(2026-09-16)
我在其基础上把滚动条重做了一遍,另修了几个Ai认为的可能缺陷,继续分享出来。
主要改动
端子表Ex 补上横向滚动条。
原来只有竖条,而默认 720px 宽根本放不下 8 个位开关(实际需要约 978px)——
第 5/6/7 位被直接裁在窗口外,压根点不到
。现在横竖都能滚。
所有滚动条统一成「最窄自动隐式」窄条
:10px 宽、圆头、叠加式不占客户区,
内容装得下就自动不出现
(原来是又粗又宽的系统原生条,约 17px,还永久常驻)。悬停加深、按住可拖、滚轮可用。
覆盖 10 处
:端子表Ex / 表格Ex / 树形框Ex / 柱状图Ex / 曲线图Ex / 列表框Ex /编辑框Ex / 富文本框Ex / 组合框Ex 下拉列表 / 消息框Ex 正文区。
列表框Ex 原来完全没有可见滚动条
(只能滚轮,用户并不知道还能滚)→ 已补上。
树形框Ex 原来的滚动条既不能悬停也不能拖
→ 已补上。
修了一个藏得很深的 Bug
:源码里 3 处 _T("宋体")。这个库的 .cpp 是 UTF-8 无 BOM,MSVC 按 GBK 解释 → 中文变乱码 → 字体名成了废字符串 → 系统静默回退默认字体。不报错、不崩溃、中文 Windows 上还看不出问题(兜底字体恰好也是宋体),但在非中文系统上会真的跑偏。已改为官方英文族名 SimSun。
图表加了横向滚动条后会压住下方类目名称 → 绘图区底边距 28 加到 40。
兼容性
:只改了 C++ 源码实现,类库结构 / 属性 / 事件一个都没动,现有工程代码不用改。
用法
:整包放到火山的 plugins\vprj_win\classlib\sys\ 下面(
保持这个层级
,库的依赖路径是按"相对类库根"写的),依赖火山自带的 mfc_ui_base。替换后建议执行一次「生成 → 清理解决方案」再编译。
注意
:本包的 .vgrp / .wsv 是
UTF-8 无 BOM
保存的(新版火山默认),
火山版本比这更旧的打不开这个库
—— 官方说明是"新版能读旧版存的文件,旧版读不了新版存的文件"。
(, 下载次数: 0)
上传
点击文件名下载附件
源码
:
(, 下载次数: 7)
上传
点击文件名下载附件
作者:
秋天的童话
时间:
4 小时前
谢谢楼主分享!
作者:
fengyishen
时间:
2 小时前
准备加入的模块"仰望模块_MFC组件扩展库"("D:\Program Files\vol_dev\plugins\vprj_win\classlib\user\yw\yw2.vgrp")和项目中的已有模块"火山模块MFC组件扩展库"("D:\Program Files\vol_dev\plugins\vprj_win\classlib\user\yw\huoshanmk2.vgrp")在同一项目内只能存在其中一个.
建立界面插件解决方案"C:\Users\Administrator\AppData\Roaming\VolDev\视窗+安卓+服务器\简体中文\测试版\plugins\vprj_win\ui\ui.vsln"失败
更新当前所使用界面模块对应的插件失败
欢迎光临 递归火山软件开发平台 (http://bbs.voldp.com/)
Powered by Discuz! X3.4