学习一下 |
支持开源~!感谢分享 |
感谢发布原创作品,精易因你更精彩! |
感谢发布原创作品,精易因你更精彩! |
学习学习 |
谢谢分享!么么么么哒 |
默念、 发表于 2021-1-9 11:46 这个就是完整的 |
shituo 发表于 2021-1-2 03:07 你好 你这个有完整的吗 |
.版本 2 .子程序 窗口_自动排列, , 公开, 自动将多个窗口,整齐的排列好。 .参数 窗口句柄, 整数型, 数组, 需要自动排列的窗口句柄数组 .参数 横间距, 整数型, 可空, 窗口之间的横向间距 .参数 纵间距, 整数型, 可空, 窗口之间的纵向间距 .参数 每行数量, 整数型, 可空, 每行几个窗口。留空则根据屏幕尺寸自动计算 .参数 对齐方式, 整数型, 可空, 0.左上角;1.右上角;2.左下角;3.右下角;4.局中 .参数 是否按标题排列, 整数型, 可空, 可空 默认:0 =不按标题排序 1=从小到大 其他非零=从大到小 .参数 新宽度, 整数型, 可空, 为0或省略时,不修改宽度 .参数 新高度, 整数型, 可空, 为0或省略时,不修改高度 .局部变量 总数, 整数型 .局部变量 行数, 整数型 .局部变量 窗口矩形, 矩形_ .局部变量 窗口宽度, 整数型 .局部变量 窗口高度, 整数型 .局部变量 临时矩形, 矩形_ .局部变量 屏幕宽度, 整数型 .局部变量 屏幕高度, 整数型 .局部变量 任务栏位置, 整数型 .局部变量 任务栏高度, 整数型 .局部变量 索引, 整数型 .局部变量 次数1, 整数型 .局部变量 次数2, 整数型 .局部变量 余数, 整数型 .局部变量 标题数组, 文本型, , "0" 总数 = 取数组成员数 (窗口句柄) .如果真 (总数 = 0) 输出调试文本 (“窗口数量不能为0 ”) 返回 () .如果真结束 .如果真 (是否按标题排列 > 0) 重定义数组 (标题数组, 假, 总数) .计次循环首 (总数, 次数1) 标题数组 [次数1] = 取窗口标题_ (窗口句柄 [次数1]) + “|+|” + 到文本 (窗口句柄 [次数1]) ' _窗口激活_SwitchToThisWindow (句柄数组 [n], 真) .计次循环尾 () 数组_排序S_ASM (标题数组, 选择 (是否按标题排列 = 1, 真, 假)) .计次循环首 (总数, 次数1) 窗口句柄 [次数1] = 到整数 (取文本右边_ (标题数组 [次数1], “|+|”)) .计次循环尾 () .如果真结束 .' 如果真 (_窗口是否最小化_IsIconic (窗口句柄 [1])) ' _窗口激活_SwitchToThisWindow (窗口句柄 [1], 真) .如果真结束 _窗口取外矩形_GetWindowRect (窗口句柄 [1], 窗口矩形) 窗口宽度 = 窗口矩形.宽度 - 窗口矩形.左边 窗口高度 = 窗口矩形.高度 - 窗口矩形.顶边 ' 输出调试文本 (窗口宽度, 窗口高度) .如果真 (新宽度 > 0) 窗口宽度 = 新宽度 .如果真结束 .如果真 (新高度 > 0) 窗口高度 = 新高度 .如果真结束 .如果真 (对齐方式 = 4 且 每行数量 = 0) 每行数量 = 绝对取整 (求平方根 (总数)) .如果真结束 .如果真 (每行数量 ≤ 0) .如果 (窗口宽度 ≥ 取屏幕宽度 ()) 每行数量 = 1 .否则 每行数量 = 绝对取整 (取屏幕宽度 () ÷ 窗口宽度) .如果结束 .如果真结束 屏幕宽度 = 取屏幕宽度 () 屏幕高度 = 取屏幕高度 () - 40 行数 = 总数 ÷ 每行数量 余数 = 总数 % 每行数量 .如果真 (余数 > 0) 行数 = 行数 + 1 .如果真结束 ' 计算总矩形.宽度高 临时矩形.宽度 = 窗口宽度 + (窗口宽度 + 横间距) × (每行数量 - 1) .如果真 (临时矩形.宽度 > 屏幕宽度) 输出调试文本 (“自动排列宽度超出屏幕。”) .如果真结束 临时矩形.高度 = 窗口高度 + (窗口高度 + 纵间距) × (行数 - 1) .如果真 (临时矩形.高度 > 屏幕高度) 输出调试文本 (“自动排列高度超出屏幕。”) .如果真结束 ' 计算并排列窗口位置 索引 = 1 .计次循环首 (行数, 次数1) .如果真 (余数 > 0 且 次数1 = 行数) 每行数量 = 余数 .如果真结束 .如果真 (对齐方式 = 0) ' 左上角 临时矩形.左边 = 0 临时矩形.顶边 = (次数1 - 1) × (窗口高度 + 纵间距) .如果真结束 .如果真 (对齐方式 = 1) ' 右上角 临时矩形.左边 = 屏幕宽度 - 窗口宽度 临时矩形.顶边 = (次数1 - 1) × (窗口高度 + 纵间距) .如果真结束 .如果真 (对齐方式 = 2) ' 左下角 临时矩形.顶边 = 屏幕高度 - 窗口高度 - (次数1 - 1) × (窗口高度 + 纵间距) 临时矩形.左边 = 0 .如果真结束 .如果真 (对齐方式 = 3) ' 右下角 临时矩形.顶边 = 屏幕高度 - 窗口高度 - (次数1 - 1) × (窗口高度 + 纵间距) 临时矩形.左边 = 屏幕宽度 - 窗口宽度 .如果真结束 .如果真 (对齐方式 = 4) ' 居中 临时矩形.左边 = 屏幕宽度 ÷ 2 - (窗口宽度 + (窗口宽度 + 横间距) × (每行数量 - 1)) ÷ 2 临时矩形.顶边 = (屏幕高度 - 临时矩形.高度) ÷ 2 + (次数1 - 1) × (窗口高度 + 纵间距) .如果真结束 ' 保持窗口在屏幕内 .如果真 (临时矩形.左边 < 0) 临时矩形.左边 = 0 .如果真结束 .如果真 (临时矩形.顶边 < 0) 临时矩形.顶边 = 0 .如果真结束 .如果真 (临时矩形.左边 + 窗口宽度 > 屏幕宽度) 临时矩形.左边 = 屏幕宽度 - 窗口宽度 .如果真结束 .如果真 (临时矩形.顶边 + 窗口高度 > 屏幕高度) 临时矩形.顶边 = 屏幕高度 - 窗口高度 .如果真结束 .计次循环首 (每行数量, 次数2) ' 如果真 (_窗口是否最小化_IsIconic (窗口句柄 [索引])) _窗口移动_MoveWindow (窗口句柄 [索引], 临时矩形.左边, 临时矩形.顶边, 窗口宽度, 窗口高度, 真) _窗口激活_SwitchToThisWindow (窗口句柄 [索引], 真) 索引 = 索引 + 1 .如果真 (对齐方式 = 0) ' 左上角 临时矩形.左边 = 临时矩形.左边 + 窗口宽度 + 横间距 .如果真结束 .如果真 (对齐方式 = 1) ' 右上角 临时矩形.左边 = 临时矩形.左边 - (窗口宽度 + 横间距) .如果真结束 .如果真 (对齐方式 = 2) ' 左下角 临时矩形.左边 = 临时矩形.左边 + 窗口宽度 + 横间距 .如果真结束 .如果真 (对齐方式 = 3) ' 右下角 临时矩形.左边 = 临时矩形.左边 - (窗口宽度 + 横间距) .如果真结束 .如果真 (对齐方式 = 4) ' 居中 临时矩形.左边 = 临时矩形.左边 + 窗口宽度 + 横间距 .如果真结束 _处理事件 () .计次循环尾 () 临时矩形.顶边 = 临时矩形.顶边 + 纵间距 _处理事件 () .计次循环尾 () |
sitemap|
易语言源码|
易语言教程|
易语言论坛|
易语言模块|
手机版|
广告投放|
精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司
( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173