打印报表时显示图片

chester1 2006-08-31 09:33:28
我有一表stuinfo:
有如下字段:sno,sname,sintro,spic(通用型),
在插入图片的时候我使用的是:
scan
sno=trim(stuinfo.sno)
append general spic from 'G:\pic\'+trim(sno)+trim('.jpg')
endscan
在报表中使用的是图片/activex绑定控件,插入图片到数据库以后,我想在打印报表的时候把图片打印出来,可是,打印的时候显示的是图片名称,
比如:200201031.jpg等,请问使用什么样的方法可以打印图片
...全文
167 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
十豆三 2006-08-31
  • 打赏
  • 举报
回复
报表打印图片(非通用字段)

*-------------------------------
方法一:

在报表中建立一个显示图片的控件
点击“报表(英文版为Report)”菜单中,
指向“插入控件(Insert Control)”,
然后点击“图片/OLE绑定(OLE Bound)”,
这时“图片/OLE绑定(OLE Bound)”属性对话框打开了,
选择“常规(General)”选项卡,
在“控件源(Control source type)区”有三个选项,
如果是VFP9,选择最后一种,即“表达式或变量名(xpression OR variable name)”
并在下面的“控件源(Control source)”处输入:
(如果是VFP6,选择第一种,即“文件”并在“文件”后面输入)
表名.存放图片路径的字段名

此方法要保证字段名中所指向的图片必须存在,否则就报错



方法二:

如果有可能有些文件路径存放错误或文件不存在或有空记录,就用如下方法:

1、报表设置(假设报表名为reportpho1.FRX)
在报表中建立一个显示图片的控件
点击“报表(英文版为Report)”菜单中,
指向“插入控件(Insert Control)”,
然后点击“图片/OLE绑定(OLE Bound)”,
这时“图片/OLE绑定(OLE Bound)”属性对话框打开了,
选择“常规(General)”选项卡,
在“控件源(Control source type)区”有三个选项,
如果是VFP9,选择最后一种,即“表达式或变量名(xpression OR variable name)”
并在下面的“控件源(Control source)”处输入:LcFileName(RECNO())

如果是VFP6,选择第一种,即“文件”
并在“文件”后面输入:LcFileName(RECNO())



2、用画图建一个空白的图片,
大小与你其它图片差不多就可以,
我建的为NullPho.bmp
并把此文件放在当前目录下。

3、打印按钮的CLICK事件:
*假设你的表名T1,存放图片路径的字段名为PhoPath
IF !USED('T1')
USE T1
ELSE
SELECT T1
ENDIF
PUBLIC lcfilename(RECCOUNT())
SCAN
IF FILE(ALLTRIM(T1.PhoPath))
lcfilename(RECNO())=ALLTRIM(T1.PhoPath)
ELSE
lcfilename(RECNO())='NullPho.bmp'
ENDIF
ENDSCAN
GO TOP
REPORT FORM reportpho1 PREVIEW
TERRYYRRET 2006-08-31
  • 打赏
  • 举报
回复
楼上说的很详细了

2,748

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧