上篇文章BLOB字段存放了图片,要怎么打印呢?我们看一下VFP的报表能打印的方式。
- 图像文件名
可以生成图像文件,然后在下方的控件源填入文件路径字段 - 通用型字段名
已经被淘汰,不建议用 - 表达式或变量名
变量名的话,我们就可以放于变量,这个变量是image对象,而image.pictureval就可以引用blob字段了
于是开干,在表单中加入一个打印按钮,写上代码
打印按钮click事件
myimg=Newobject("image")
myimg.PictureVal=test.field1
Report Form 报表3.frx Preview
报表的控件源设为myimg变量
好了,运行看看
嘿嘿嘿,显示出来了,可爱的小狐狸,戴着围巾,感觉很适合今天厦门的天气,
湿冷显冷,瞬间就不冷了。
但是不对,发现第二个图像也显示成小狐狸了,应该是另一张图。
再开启脑洞想想,控件源类型还可以是表达式,那不可以用函数了,函数返回一个image对象,传入字段不就OK了。
六行代码搞起来
将下方代码保存为_getpic
Function _getpic
Lparameters cImgBin
mypic=Newobject("image")
mypic.PictureVal=cImgBin
Return mypic
Endfunc
报表的控件源设为_getpic(test.field1)
按钮事件改为
Report Form 报表3.frx Preview
运行测试看看,一切完美。
更多资料:www.sn58.cn