递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[视窗] 火山视窗MFC锚点布局,让自适应布局更简单!

[复制链接]

103

主题

697

帖子

6724

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
6724
QQ
跳转到指定楼层
楼主
发表于 2026-9-13 16:12:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 xrea 于 2026-9-16 09:51 编辑

锚点布局介绍:
  锚点布局是面向火山PC(视窗平台)的界面自适应组件,基于 MFC界面基本类模块扩展实现。将其拖入窗口后,只需为内部子组件选择“锚点”属性(左右、全部锚定等 16 种组合),窗口尺寸变化时子组件即自动调整位置与尺寸:设计器中拉伸实时预览,运行时同样自动生效。组件采用四边距基线算法,杜绝累积漂移;缩小时自带最小尺寸保护,支持嵌套布局与运行时动态调整锚点,并可随时冻结或恢复重排——界面自适应从此无需手写任何布局代码。
锚点布局演示:

锚点布局使用方法:
三步使用
第 1 步:放置锚点布局
在窗口设计器中,从工具箱把「锚点布局」组件拖到窗口上(默认 600×420,可拉伸调整)。它是一个容器,把你希望随窗口缩放的组件都放进它里面。
第 2 步:放入子组件
把按钮、编辑框等组件正常拖到锚点布局内部(和普通容器操作一样),摆好初始位置——这个初始摆放就是布局的“基线”。
第 3 步:设置锚点
选中锚点布局内的某个子组件 → 属性表找到「锚点」属性 → 下拉选择组合(默认“左顶”)。常见搭配见上图速查表:

场景        锚点组合        效果
顶部工具栏/标题栏        左右(5)        宽度跟随,高度不变[url=]Hide[/url]
左侧导航栏        左顶底(11)        高度跟随,宽度不变
中央内容区        全部锚定(15)        四边跟随拉伸
底部状态栏        左右底(13)        宽度跟随,贴底
右下角"确定"按钮        右底(12)        始终贴右下角
Logo/角标        左顶(3,默认)        位置固定不动
验证:设计器里直接拉伸锚点布局,子组件会按锚点实时重排——所见即所得。保存后运行程序,窗口缩放时同样自动生效。

锚点布局安装方法:
将压缩包中的文件夹解压出来替换到路径(你的火山安装目录\plugins\vprj_win\classlib\sys)。
(其实就是替换官方的mfc_ui_base类库)注意替换后打开界面设计器会要求更新,更新下即可
附件:
游客,如果您要查看本帖隐藏内容请回复

V0.2发布,相对于基础版本做了以下升级:
1. 对多组件同时存在的情况下流畅度进行了升级。
游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

17

主题

163

帖子

1401

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
1401
沙发
发表于 2026-9-13 16:18:07 | 只看该作者
回复

使用道具 举报

95

主题

852

帖子

7524

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
7524
板凳
发表于 2026-9-13 16:27:24 | 只看该作者
火山有你而更精彩
回复

使用道具 举报

15

主题

339

帖子

2886

积分

银牌会员

Rank: 6Rank: 6

积分
2886
地板
发表于 2026-9-13 18:52:27 | 只看该作者
感谢楼主大佬分享,很有用的功能。
回复

使用道具 举报

62

主题

578

帖子

7804

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
7804
5#
发表于 2026-9-13 19:31:03 | 只看该作者
优秀。。。
回复

使用道具 举报

40

主题

354

帖子

2706

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
2706
6#
发表于 2026-9-13 20:49:56 | 只看该作者
火山有你而更精彩
回复

使用道具 举报

0

主题

62

帖子

4033

积分

论坛元老

Rank: 8Rank: 8

积分
4033
QQ
7#
发表于 2026-9-13 21:34:17 | 只看该作者
不错,不然每次都是慢慢去调
回复

使用道具 举报

507

主题

2万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
49691
QQ
8#
发表于 2026-9-13 21:43:51 | 只看该作者
牛逼
回复

使用道具 举报

3

主题

224

帖子

3907

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
3907
9#
发表于 2026-9-13 21:45:45 | 只看该作者
谢谢分享
回复

使用道具 举报

103

主题

697

帖子

6724

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
6724
QQ
10#
 楼主| 发表于 2026-9-13 23:02:33 | 只看该作者
让MFC再创辉煌:噜阿噜
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-27 23:52 , Processed in 0.093933 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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