首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

在表单读取图像有没有更快的办法解决办法

2012-05-14 
在表单读取图像有没有更快的办法我建了个查询表单,上面的诸多控件就不一一阐述了,就是image控件在读取图像

在表单读取图像有没有更快的办法
我建了个查询表单,上面的诸多控件就不一一阐述了,就是image控件在读取图像时大约花了5-8秒,感觉有点慢,各位大侠给点意见吧。
表:c区.dbf 里面有个图像字段:字符型;20个字节,里面是图像路径。
image控件属性:基本是默认,只有stretch=2-变比填充
command1的click代码:
SELECT 图像 INTO ARRAY imgph FROM c区 WHERE 客户=rxht1 and 商标=rxht2 and 总称=rxht3 AND 型号=rxht4 AND 载量=rxht5
thisform.image1.Picture=imgph
thisform.image1.refresh
图像大小:6276*4969



[解决办法]
也许你的 c区 表中记录数非常大,时间主要是用在执行 sql 语句上
过滤条件优化一下,取数应该基本不需要时间
优化原则是看哪个字段比较具有唯一性,可能是客户字段吧,dbf 按此字段加索引

跟图片的大小也有关系,要缩放这样大的一张图片,vfp 处理也需要些时间,但这个应该没办法,除非你先用其他软件处理一次,缩小一些
[解决办法]
试着以下方法,看看能不能提速:

1、
INTO ARRAY imgph 改为 INTO Cursor _t1 
thisform.image1.Picture=imgph 改为 thisform.image1.Picture=t1.图像

2、
stretch 改为 0 或 1

3、
你的图片(6276*4969)确实太大了,建议另存为小一点。
[解决办法]
可以用active控件,做到图标试试
[解决办法]
表"图像字段"应该只保存图像文件全名,比如:123456.BMP
thisform.image1.Picture=SYS(5)+SYS(2003)+"\"+c区.图像字段

这样就会加快图像显示

thisform.image1.refresh &&这行代码运行时,应该发生错误吧

热点排行