利用Vb保存一幅图到Access数据库
编辑整理检查:在我们做的很多管理系统中,除了保存大量的文字信息外,有时候还需要保存一定数量的图片。比如一个人事管理系统,需要保存每个人的照片,方便处理每个人的信息。
Office中的Access数据库可以保存图片,也可以保存文本,保存图片的数据类型为“OLE对象”:用于保存Excel电子表格、Word文档、图形、声音或其他二进制数据。
现在,我将用一个例子来介绍使用vb保存图片的方法。首先,我们将介绍VB中处理二进制数据的语句:Put和Get。
Put和Get语句的语法如下:
Put [#] filenumber,[recnumber],varname
Get [#] filenumber,[recnumber],varname
Filenumber:必选。任何有效的文件号
Recnumber:可选。变量(长型).记录号(随机文件)或字节数(二进制文件)表示写入从这里开始。
Varname:必需。包含要写入磁盘的数据的变量名。
注意:文件中的第一个记录或字节位于位置1,第二个记录或字节位于位置2,依此类推。如果省略recnumber,将写入前一个Get或Put语句之后的下一个记录或字节。必须列出所有用于划界的逗号。
现在让我们开始构建一个项目。功能是同时保存文档和图片。
首先,我们用以下字段构建一个表(表名为photo ):
字段名类型标题
类别文件的分类
照片OLE对象保存图片文件
photo_ext文本图片的扩展
输入日期/时间文件输入的时间
修改时间日期/时间文档的修改时间
主题文本文本
现在我们可以创建一个finput窗口文件来保存图片。
首先,我们必须连接我们的数据库。代码如下:
将cnstr标注为字符串
cnstr = "Provider=Microsoft。Jet . OLEDB.4.0持久安全信息= False"_
& "数据源=" & App。Path & " \ realize.mdbJet OLEDB:数据库"
cn。打开cnstr
cn。CursorLocation = adUseClient
这段代码可以放在form_load事件中,作为一个多窗口系统,放在一个模块文件中,这样就可以在其他窗口中调用cn连接。
以下是具体的窗口代码:
版本5.00
object = " { f 9043 c 88-f6f 2-101 a-a3c 9-08002 B2 f 49 FB } # 1.2 # 0 ";" comdlg32.ocx "
object = " { 3b7c 8863-D78F-101 b-B9 b5-04021 c 009402 } # 1.2 # 0 ";" richtx32.ocx "
开始VB。表单输出
BorderStyle = 0 '无
Caption = "文档输入"
客户端高度= 6240
ClientLeft = 0
ClientTop = 0
ClientWidth = 8955
ControlBox = 0 'False
LinkTopic = "Form1 "
MDIChild = -1 '真
比例高度= 6240
缩放宽度= 8955
ShowInTaskbar = 0 'False
开始MSComDlg。CommonDialog通用对话框1
左= 8040
Top = 3840
_ExtentX = 847
_ExtentY = 847
_Version = 393216
目标
开始VB。组合框组合1
高度= 300
左= 7080
TabIndex = 10
Top = 480
宽度= 1335
目标
开始VB。命令按钮命令3
Caption = "关闭"
身高= 375
左= 5280
TabIndex = 8
Top = 5640
宽度= 1095
目标
开始VB。命令按钮命令2
Caption = "保存"
身高= 375
左= 2520
TabIndex = 7
Top = 5640
宽度= 1095
目标
开始VB。命令按钮命令1
Caption = "浏览"
身高= 255
左= 8040
TabIndex = 6
Top = 4800
宽度= 735
End
0条评论