社区
DataWindow
帖子详情
在线等待,如何在dw中显示图片?无论是用picture控件还是ole都可以
livy123
2003-05-19 04:27:03
如题,2种方式任一种都可以,只要给全代码就可以给分了。
...全文
114
20
打赏
收藏
在线等待,如何在dw中显示图片?无论是用picture控件还是ole都可以
如题,2种方式任一种都可以,只要给全代码就可以给分了。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
紫炎圣骑
2003-07-02
打赏
举报
回复
用picture控件完全可以实现的
把图片的名称写到*.pbr中
编译的时候把*.pbr文件打包到程序中
打包的时候图片文件要放到编译路径下
这样的话,你就可以随便使用*.pbr中的图片了,再也不用关心路径问题,因为图片已经打包到软件中了!!
brightstar
2003-07-02
打赏
举报
回复
UP
紫炎圣骑
2003-07-02
打赏
举报
回复
学习中.....
iwithyou
2003-07-01
打赏
举报
回复
我用通过PICTURE控件存进去的数据可以成功。
http://expert.csdn.net/Expert/topic/1979/1979641.xml?temp=.5850183
flyerlxg
2003-07-01
打赏
举报
回复
study and help you up
runsoft
2003-07-01
打赏
举报
回复
可以使用PICTURE控件,在记录当中保存图片的位置信息,如果要显示,则,在 DW当中,
放置一个PICTUREN 空间,把检索出来的路径复制给他,不过这个方法适合单条记录。
iwithyou
2003-07-01
打赏
举报
回复
Joss:
用了你的第一种方法,但是生成的BMP无图像,打开时提示“无效的位图文件或不支持文件的格式”。
有哪位做成功的没有?
guanhua8
2003-06-04
打赏
举报
回复
用DB OLE好象不行。
sure2002
2003-06-04
打赏
举报
回复
把图片写到*.pbr中再把图片插入到软件中,正常的PICTURE,这种做法不会影响软件的运行速度只是把软件的容量增大了.
livy123
2003-05-19
打赏
举报
回复
补充一点,我是用n-up格式的dw
livy123
2003-05-19
打赏
举报
回复
感谢joss(季节...夏至),第一种方法有点麻烦,我想用第二种方法。但第二种ole的属性我已经设置好了,但编程那里的代码(关于这方面的)我一窍不通,有没有样本代码看看啊,谢谢
nbnasom
2003-05-19
打赏
举报
回复
备注:字段值应为全路径名:如:c:\mydocu~1\mypict~1\1.bmp
图片格式:仅能用BMP
路径名:DOS 8。3格式
nbnasom
2003-05-19
打赏
举报
回复
任意控件,在general页选取display as picture
jeff_107
2003-05-19
打赏
举报
回复
没试过,, gz
joss
2003-05-19
打赏
举报
回复
方法一的代码:
图片临时存放在图片路径下:
先读出来的
blob emp_id_pic
SELECTBLOB picture
INTO :emp_id_pic
FROM scanimg
WHERE picID = :sz_PicID
USING SQLCA ;
在临时写入一个路径下:
如:
ll_filelen=len(emp_id_pic)
setnull(emp_id_pic)
emp_id_pic=as_blob
ls_server_path="d:\ls" //临时存放的图片路径
ls_downfile=ls_server_path
//计算读文件的次数,不能一次大于32K的数据
if ll_filelen>32766 then
if mod(ll_filelen,32766)=0 then
li_loops=ll_filelen/32766
else
li_loops=(ll_filelen/32766) + 1
end if
else
li_loops=1
end if
ls_filename=mid(ls_filename,4,len(ls_filename))
//写文件
li_FileNum = FileOpen(ls_downfile,StreamMode!, Write!, Shared!, Append!)
ll_bytes_read=FileWrite(li_FileNum,emp_id_pic)
for li_counter=2 to li_loops
ll_new_pos=ll_bytes_read*(li_counter - 1) + 1
ll_new_pos=ll_bytes_read*li_counter
data_ls = BlobMid(emp_id_pic,ll_bytes_read*(li_counter - 1) + 1,ll_bytes_read*li_counter)
ll_new_pos=FileWrite(li_FileNum,data_ls)
next
fileclose(li_filenum)
//最后
dw_1.object.p_1.Filename='d:\ls\temp.bmp'
joss
2003-05-19
打赏
举报
回复
备注:
楼主的问题如使用我的建议,则注意图片不要太大,因为保存在数据库中的图片文件读取但对系统性能有影响(如果图片太大),并且使用OLE虽然方便但PB与OLE的兼容性一直受到大家的致疑!
所以所保存的图片不应太大!
joss
2003-05-19
打赏
举报
回复
1、用picture控件显然不行,因为bitmap要求指定路径!
当然,如果每页只显示一个图片用程序脚本可实现!
1)读出数据库内blob数据
2)写入到窗口中的picture控件
3)保存图片到指定的临时文件如aaa.bmp
4)在数据窗口中picture的控件指定picturename = aaa.bmp
总的来说这样还是不太方便
2、用DB OLE控件可实现,主要还要设置表名、列名、KEY CLAUSE、OLE CLASS和CLIENTNAME expression
例如:其中的key clause则可写id = :id
ole class 则选择 PBrush 画笔图片
classname expression则写 "object"
这里的id指要显示的表相关的ID
建议楼主使用第2种方法!
JIANXIN_LU
2003-05-19
打赏
举报
回复
在数据窗口对象中使用ole Database blob控件,可以达到你的要求。
guanhua8
2003-05-19
打赏
举报
回复
数据窗口画板有一个DB OLE 控件,接下来就查帮助吧
livy123
2003-05-19
打赏
举报
回复
忘了,图片数据是以blob类型放在数据库中的
在
dw
中
显示
图片
本文介绍两种在PowerBuilder
中
从数据库读取并展示BLOB类型
图片
的方法:一是通过临时文件与
Pic
tu
re
控件
;二是利用DB
OLE
控件
直接
显示
,讨论了它们的优缺点及适用场景。
dw
读取access
中
的
图片
_ACCESS读取并
显示
图片
?
本文介绍了如何在Access
中
存储
图片
,并使用Dreamweaver(
DW
)读取和
显示
这些
图片
。通过将数据库字段设置为'
OLE
对象',可以将
图片
存储在数据库
中
,通常仅存储
图片
路径以节省空间。当需要
显示
图片
时,根据路径读取并
显示
。提供了一个Access窗体示例,展示了如何动态根据相片编号
显示
对应
图片
。
PowerBuilder
中
图片
文件的处理
本文介绍了在PowerBuilder应用程序
中
处理
图片
文件的两种方法:使用PB语句加
Pic
tu
re
控件
及使用
OLE
列加
OLE
控件
。详细讨论了
图片
的存储、
显示
与缩放过程。
ATL
控件
Pic
tu
re属性赋值方法
博客展示了C++代码,包含CObj类的构造函数,用于初始化
图片
的init
Pic
函数,通过文件流读取
图片
数据并加载。还有绘制
图片
的draw
Pic
函数,以及OnDraw函数,其
中
调用draw
Pic
完成
图片
绘制,涉及ATL相关操作。
DataWindow
611
社区成员
20,469
社区内容
发帖
与我相关
我的任务
DataWindow
PowerBuilder DataWindow
复制链接
扫一扫
分享
社区描述
PowerBuilder DataWindow
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章