|
|
发表于 2026-7-26 20:52:06
|
显示全部楼层
辽宁省丹东市
之前写的一个代码片段 你可以参考一下,进度条滚到哪 图片就加载到哪 不卡顿
| 变量名 | 类 型 | 静态 | 数组 | 备 注 | | i | 整数型 | | | | n | 整数型 | | | | 总数 | 整数型 | | | | 单次总数 | 整数型 | | | | 显示首行 | 整数型 | | | | 显示尾行 | 整数型 | | | | 超列句柄 | 整数型 | | | | 图片组 | 字节集 | | | | 索引组 | 整数型 | | 0 | | 索引 | 整数型 | | | | 路径 | 文本型 | | | | 拓展名 | 文本型 | | | | 位置 | 整数型 | | | | 图片 | 字节集 | | | | 图计数 | 整数型 | | | | 加载计数 | 整数型 | | | | 总图片组 | 字节集 | | | 线程_初始化COM库 ()总图片组 = 建空图片组 (50, 50 )图片组 = 建空图片组 (50, 50 )加入图片 (图片组, #图50, #白色 )进入许可区 (许可证Q )超列查重结果.图片组 = 图片组 超列句柄 = 超列查重结果. 取窗口句柄 ()超列查重结果.高度 = 超列查重结果.高度 + 1 超列查重结果.高度 = 超列查重结果.高度 - 1 哈希索引Z. 创建 ( #整数型, #整数型, 16 )时钟焦点.时钟周期 = 1 退出许可区 (许可证Q ) 判断循环首 (真) 进入许可区 (许可证Q ) 总数 = 超列查重结果. 取表项数 () 显示首行 = 超列取当前可视首行 (超列句柄 ) 显示尾行 = 显示首行 + 15  显示首行 = 显示首行 - 5  计次循环首 (总数, i )  如果真 (i > 显示首行 且 i < 显示尾行 )   如果真 (选择夹1.现行子夹 = 1 )    索引 = i - 1     如果真 (哈希索引Z. cha询 (索引 ) = 假)     哈希索引Z. 添加 (索引, 0 )     加载计数 = 加载计数 + 1      路径 = 超列查重结果. 取标题 (索引, 1 )     拓展名 = 文件_取扩展名 (路径 )     如果真 (寻找文本s (拓展名, “jpg”, , 真) ≠ -1 或 寻找文本s (拓展名, “png”, , 真) ≠ -1 或 寻找文本s (拓展名, “bmp”, , 真) ≠ -1 或 寻找文本s (拓展名, “gif”, , 真) ≠ -1 或 寻找文本s (拓展名, “ico”, , 真) ≠ -1 或 寻找文本s (拓展名, “jpeg”, , 真) ≠ -1 )      图片 = 取图片缩略图 (路径, 50, 50 )      如果真 (取字节集长度 (图片 ) > 100 )      加入图片 (图片组, 图片, #白色 )        图计数 = 图计数 + 1       加入成员 (索引组, 索引 )      调试输出 (“计数”, 图计数 )                          计次循环尾 () 单次总数 = 取数组成员数 (索引组 ) 如果真 (单次总数 ≠ 0 )  超列查重结果. 禁止重画 ()  总图片组 = 合并图片组 (总图片组, 图片组 )  图片组 = 建空图片组 (50, 50 )  超列查重结果.图片组 = 总图片组   图计数 = 图计数 - 单次总数   计次循环首 (单次总数, n )   图计数 = 图计数 + 1    超列查重结果. 置图片 (索引组 [n ], 0, 图计数 )  计次循环尾 () 清除数组 (索引组 )  如果真 (取字节集长度 (总图片组 ) > 250000000 )  调试输出 (“图片组太大了”)   懒加载清空索引Z = 真  超列查重结果.允许重画 ()   如果真 (懒加载清空索引Z = 真) 调试输出 (“清空索引”)  懒加载清空索引Z = 假   总图片组 = 建空图片组 (50, 50 ) 加入图片 (图片组, #图50, #白色 )  图计数 = 0   加载计数 = 0   哈希索引Z. 创建 ( #整数型, #整数型, 16 )  退出许可区 (许可证Q ) 调试输出 (单次总数, 单次总数 ) 如果真 (加载计数 ≥ 总数 ) 调试输出 (“跳出去了”) 跳出循环 ()  延时 (500 ) 判断循环尾 ()线程_取消COM库 ()|
| 取图片缩略图 | 字节集 | | |
| 图片路径 | 文本型 | | | | 缩略宽度 | 整数型 | | | | 缩略高度 | 整数型 | | | |
| 变量名 | 类 型 | 静态 | 数组 | 备 注 | | 原图 | GP位图 | | | | 返回字节集 | 字节集 | | | | 图像 | GP图像 | | | | 第一次运行 | 逻辑型 | | |
如果真 (第一次运行 = 假) 第一次运行 = 真 Gdiplus初始化 () 如果真 (是否为空 (缩略宽度 ))  缩略宽度 = 50 如果真 (是否为空 (缩略高度 ))  缩略高度 = 50  如果真 (原图. 创建自文件 (图片路径, ) = 假) 返回 ({ }) 原图. 取图像缩略图 (缩略宽度, 缩略高度, 图像 )返回字节集 = 图像. 保存到字节集 ( #图像格式_PNG, )图像. 销毁 ()原图. 销毁 ()返回 (返回字节集 )
|
|