| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2871 人关注过本帖, 1 人收藏
标题:关于调用(二进制)备注型字段照片问题,请高手赐教!
只看楼主 加入收藏
xtxzgl
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2012-8-22
结帖率:85.71%
收藏(1)
已结贴  问题点数:20 回复次数:54 
关于调用(二进制)备注型字段照片问题,请高手赐教!
我想做一个人员管理程序,其中需要有人员照片。用的是VFP9.0
1、表单建立用的是“表单向导”
2、建立按钮“上传照片”,命令如下:
JPGFile = GETFILE('JPG,BMP', '照片为 JPG格式',  '保存', 1, '选择JPG格式照片')
IF LEN(JPGFile) > 0  
     replace 照片 with filetostr(JPGFile)
ENDIF
3、向表单插入照片用直接调用二进制字段
命令为:“PictureVal=rsgl.照片”
在表单位上显示了当前人员的照片,可在移动记录指针时,照片不随着人员变动,始终是第一次调出的照片。
问题1:怎样才能让照片随着上下记录的变动而变动?
问题2:能否固定照片大小尺寸,也就是不管上传的照片尺寸多大,固定住照片显示尺寸,给尺寸加把锁(以前做网页时,ASP有此命令,不知VFP的命令是什么,有哪里设置)。
问题3:因为照片不随记录变动而变动,我用了另外一个方法,先把照片调出另存为临时图片文件,命令为:
SET TALK OFF
Strtofile(rsgl.照片,'tp.jpg')
再插入表单,而是在记录指针移动时,老是提问“TP.jpg文件已存在,改写吗”,请问在哪里设定“SET TALK OFF”才有效。
问题4:最后一个问题怎么用“报表”把二进制字段中的照片打印出来?

以上问题请高手赐教
在下谢谢了!
我上传样本,请高手指点
rygl.rar (3.12 MB)


以上4个问题,全部都解决了,
其中有两个问题,问题2、问题3sdta老师已经回答。
问题1受TonyDeng老师上传的rygl.prg启发,也解决了,其实很简单,就是在移动记录的按钮里加上“THISFORM.image1.PictureVAL=ryglsjb.照片”,就OK了,点击“首”、“尾”、“上”、“下”记录移动,照片也随之变化。
“问题4”参照以下帖子也解决了。
http://blog.
再次谢谢TonyDeng等老师的帮助!

[ 本帖最后由 xtxzgl 于 2015-2-16 23:53 编辑 ]
搜索更多相关主题的帖子: 人员管理 replace 上传照片 二进制 
2015-02-13 16:58
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:6 
1、不主张将照片保存在二进制备注字段中,建议将照片保存在一个子文件中,单独管理。
2、创建表单,不要用 表单向导
3、关于表单(报表)中显示照片的示例,论坛中有很多
4、楼主对IMAGE控件的属性掌握上有欠缺

老是提问“TP.jpg文件已存在,改写吗”

SET SAFETY  OFF

问题2:能否固定照片大小尺寸,也就是不管上传的照片尺寸多大,固定住照片显示尺寸

.image1.stretch=1

坚守VFP最后的阵地
2015-02-13 17:08
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
照片保存路径
2015-02-13 19:06
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:0 
strtofile,filetostr,转来转去,不如不转,图片文件就保存在磁盘,表记录只保存文件名。
2015-02-13 20:58
星光悠蓝
Rank: 9Rank: 9Rank: 9
来 自:山水甲天下
等 级:贵宾
威 望:52
帖 子:527
专家分:1281
注 册:2010-1-11
收藏
得分:0 
如果大家都用客户端,又怎样处理?
2015-02-14 09:40
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用星光悠蓝在2015-2-14 09:40:19的发言:

如果大家都用客户端,又怎样处理?

遠程的數據存取機制,與本地不同。控件Image的Picture屬性,是在本地提取文件的,不能在遠程機器上提取,遠程的數據,必須通過網路傳送到本地另存爲文件,才能用Image.Picture屬性顯示圖片。但Image控件其實還有另一個圖片屬性,那就是PictureVal,把圖片文件讀到字符串中,賦値給這個屬性,就能不另存爲(本地)磁盤文件,但整個圖片數據仍然要通過網路傳送到客戶端,速度由圖片數據大小和網路速度決定。

遠程數據,通過數據庫字段傳送,與在服務器上讀入文件再把數據傳送過來,是一樣的,事實上數據庫上的所有數據,都在服務器的磁盤上讀入通過網路傳送給客戶端,兩者的效率完全一樣。


[ 本帖最后由 TonyDeng 于 2015-2-14 10:23 编辑 ]

授人以渔,不授人以鱼。
2015-02-14 10:19
星光悠蓝
Rank: 9Rank: 9Rank: 9
来 自:山水甲天下
等 级:贵宾
威 望:52
帖 子:527
专家分:1281
注 册:2010-1-11
收藏
得分:0 
服务器的图片是直接存到数据库中,而不是单独放在服务器的某个文件夹内,是这样理解吗?
2015-02-14 11:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
所有數據庫都儲存在磁盤中,所謂的數據庫,不過是以一個文件的形式分塊解析和存取數據,這個文件在數據庫的專用文件夾内。

授人以渔,不授人以鱼。
2015-02-14 11:18
xtxzgl
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2012-8-22
收藏
得分:0 
回复 2楼 sdta
老兄,首先谢谢您的赐教。让我长了很多见识。二十年前,我刚参加工作时用的是数据库是在DOS下运行,那是还没有向导一说,都是“硬编”,后来因为种种原因,没有再用。现在又重新使用,一时不知从何下手。好多命令都有变化,请老兄多多赐教,能否告诉我第一个问题,怎么从二进制备注型直接托插入到表单,并随着记录变化而变化。这样可以避免导出等许多麻烦。
老兄能否给我传一个“相对简单”的不用表单向导,直接用编码“硬编”的程序,以便我用做范例进行学习。我的信箱:3882877@
还请老师不烦赐教,多谢了!

[ 本帖最后由 xtxzgl 于 2015-2-15 10:01 编辑 ]

活到老学到老
2015-02-15 10:00
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
把你的數據傳上來,設計的畫面截圖看看。

授人以渔,不授人以鱼。
2015-02-15 11:34
快速回复:关于调用(二进制)备注型字段照片问题,请高手赐教!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018998 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved