开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 1984|回复: 49
收起左侧

[易语言纯源码] 窗口组件自适应宽度计算【最终版】

[复制链接]
结帖率:100% (1/1)
发表于 2025-9-6 20:35:45 | 显示全部楼层 |阅读模式   陕西省西安市
分享源码
界面截图: -
是否带模块: 纯源码
备注说明: -
【原贴】:https://bbs.ijingyi.com/forum.ph ... 14863440&extra=
这个贴子 是对上面的帖子的补充。
上面帖子是在组件默认字体(小五,9pt(12PX))
的情况下,进行计算的,后面有位论坛网友提醒说 和字体是不是有关系。就继续研究了一下
效果图:
-------------------------------------------------------------------------------------------

  
子程序名返回值类型公开备 注
取组件字体的单位像素整数型 
参数名类 型参考可空数组备 注
编辑框编辑框
标签标签
按钮按钮
超级列表框超级列表框
变量名类 型静态数组备 注
PX双精度小数型 
单位像素整数型像素px
如果 (是否为空 (编辑框))
编辑框.字体.字体大小 = 编辑框.字体.字体大小
' 【易语言字体大小取出的是整数值,有些小数型字体大小的会被它 向上取整,但是实际最初设计的时候,貌似又是按照 小数(分数)设计的大小】
' 这一步是重新赋值 取出的取整大小 重新赋值 避免误差
' PS 避免 一些实际大小是 7.5pt 取出来是8  按8去计算 像素宽度 与实际像素占用 不一致.
' 感觉 应该设计一种分数 数据类型 避免小数误差
PX = 编辑框.字体.字体大小 × 4 ÷ 3
如果 (是否为空 (标签))
标签.字体.字体大小 = 标签.字体.字体大小
PX = 标签.字体.字体大小 × 4 ÷ 3
如果 (是否为空 (按钮))
按钮.字体.字体大小 = 按钮.字体.字体大小
PX = 按钮.字体.字体大小 × 4 ÷ 3
如果 (是否为空 (超级列表框))
超级列表框.字体.字体大小 = 超级列表框.字体.字体大小
PX = 超级列表框.字体.字体大小 × 4 ÷ 3
调试输出 (“PX”, PX)





如果 (PX > 到整数 (PX))
单位像素 = PX ÷ 2 + 1
调试输出 (“单位像素+ 1”, 单位像素)
单位像素 = PX ÷ 2
调试输出 (“单位像素”, 单位像素)
返回 (单位像素)
子程序名返回值类型公开备 注
_按钮_标签_编辑框_按钮_被单击  
变量名类 型静态数组备 注
列标题宽度整数型 
列标题文本型 
PX双精度小数型 
单位像素整数型像素px
编辑框编辑框 
标签标签 
按钮按钮 
编辑框 = 编辑框4
标签 = 标签1
按钮 = 按钮3
列标题 = 编辑框2.内容
单位像素 = 取组件字体的单位像素 (, 标签, )
列标题宽度 = 取文本长度 (列标题) × 单位像素 + 2
标签.标题 = 列标题
标签.宽度 = 列标题宽度
单位像素 = 取组件字体的单位像素 (编辑框, , )
列标题宽度 = 取文本长度 (列标题) × 单位像素 + 2
编辑框.内容 = 列标题
编辑框.宽度 = 列标题宽度
单位像素 = 取组件字体的单位像素 (, , 按钮)
列标题宽度 = 取文本长度 (列标题) × 单位像素 + 8
按钮.标题 = 列标题
按钮.宽度 = 列标题宽度
编辑框1.加入文本 (“字体大小:”到文本 (编辑框4.字体.字体大小)“单位像素”到文本 (单位像素)#换行符 )


i支持库列表   支持库注释   
iext扩展界面支持库一
spec特殊功能支持库

【老爷们,觉得有用的,点点评分啊,老爷们】

窗口组件自适应宽度最终版.e

987.31 KB, 下载次数: 79, 下载积分: 精币 -2 枚

QQ202596-202240 00_00_00-00_00_30.gif

评分

参与人数 7好评 +3 精币 +12 收起 理由
fasdfasfa + 1 + 2 YYDS~!
文西哥 + 1 感谢分享,很给力!~
sunfly + 1 + 2 想知道分组框内组件自适应这个问题论坛有解决例子了吗
cui870222829 + 1 感谢分享,很给力!~
kyo9766 + 1 感谢分享,很给力!~
airaz + 1 + 3 YYDS~!
quary + 2 支持开源~!感谢分享

查看全部评分


签到天数: 7 天

发表于 2025-10-27 00:10:14 | 显示全部楼层   湖南省常德市
发现优秀帖子请给楼主点赞或评分打赏
回复 支持 反对

使用道具 举报

结帖率:0% (0/6)

签到天数: 4 天

发表于 2025-10-2 13:28:26 | 显示全部楼层   江苏省南京市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 7 天

发表于 2025-9-14 08:22:31 | 显示全部楼层   河北省石家庄市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:89% (8/9)

签到天数: 6 天

发表于 2025-9-14 00:27:28 | 显示全部楼层   四川省成都市
谢谢分享!
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)

签到天数: 9 天

发表于 2025-9-13 19:27:13 | 显示全部楼层   广东省东莞市
感谢分享哦。。
回复 支持 反对

使用道具 举报

签到天数: 6 天

发表于 2025-9-13 18:55:52 | 显示全部楼层   浙江省衢州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 6 天

发表于 2025-9-13 18:54:52 | 显示全部楼层   浙江省衢州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 10 天

发表于 2025-9-12 16:13:32 | 显示全部楼层   河北省石家庄市
支持支持
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)

签到天数: 8 天

发表于 2025-9-12 08:33:27 | 显示全部楼层   广东省茂名市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

关闭

精易论坛 - 有你更精彩上一条 /2 下一条

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

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

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