递归火山软件开发平台
标题:
[PC]连续赋值的实现
[打印本页]
作者:
609177738
时间:
2025-4-6 21:37
标题:
[PC]连续赋值的实现
本帖最后由 609177738 于 2025-4-7 23:47 编辑
众所周知,火山PC的连续赋值仅支持 "支持'='赋值的对象", 而火友呼吁声最大的就是不支持
窗口组件
的
属性写/普通
方法:
例如 对一大批组件的标题进行赋值, 又或者是禁止, 等等.
------------------------------------------------
实际上很早之前 在
Ex_DirectUI界面库
中 就提供了 一种以C++
宏展开方式
来实现的 任意对象连续赋值操作,
为"连续执行1-4"),
并且封装了常用的 "连续赋值标题 " 函数.
缺点是 支持的扩展变量个数有限,EXDUI中通过N行宏代码以支持到了可扩展100个变量,
简直是代码灾难(老太婆的裹脚布 , 跟
火山的模板类
一样, 反馈都是石沉大海)
本文通过C++可变参数模板来实现以上功能,可扩展参数变量不再受限制.
函数名 "连续赋值自函数
" : 至少需提供3个参数 ,
每个参数对应要求具体看源码内备注
参数1: 真正执行赋值的静态方法
参数2: 传递到参数1所提供的方法中, 用于所欲赋予的值
参数3: (
必须传引用
)
传递到参数1所提供的方法中,
所欲赋值到的变量,
可无限扩展
连续赋值组件标题例子:
连续赋值自函数 (_赋值标题, "连续赋值标题", 按钮4, 按钮2, 按钮3, 编辑框1)
//
_赋值标题 静态函数只需实现一次即可
<火山程序 类型 = "通常" 版本 = 1 />
方法 _赋值标题 <公开 静态 折叠>
参数 值 <类型 = 文本型 注释 = "@视窗.后缀文本 "&" 为可选,因为火山类自动传引用,基本数据类型一般无需传引用">
参数 变量 <类型 = 窗口组件 注释 = "基本数据类型 必须手动添加" 注释 = "窗口组件 为 火山的类 无需添加." "//@视窗.后缀文本" = "&">
{
变量.标题 = 值 // 属性写 或 普通方法 也可以
}
复制代码
其他的需求自行编写 属于自己的赋值静态方法来实现吧!
2025.4.7更新 解决x86 不支持问题
作者:
沉默流星
时间:
2025-4-7 08:06
支持
作者:
fengyishen
时间:
2025-4-7 08:44
一直有个疑问,易语言底层也是C,既然能封装,火山为啥不封这个命令。感觉还是火山限制太狠了,导致不灵活了。
作者:
hcwanz
时间:
2025-4-7 11:37
易语言怎么可能是c, 易和c的唯一共性也就是都是面向过程了
作者:
aronshen
时间:
2025-4-7 11:55
支持
欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/)
Powered by Discuz! X3.4