|
2#
楼主 |
发表于 2006-9-1 08:02:00
|
只看该作者
采用ole
我的以上问题经过几天的努力,终于解决了,不敢独享欢乐,将代码贴在这里分享:
设OLE控件在【文件属性子窗体】,OLE控件名:文件内容 ,是绑定控件。
Private Sub 选择文件名_AfterUpdate()
Me!选择文件路径全名 = DLookup("文件路径", "文件存放表", "[文件名]='" & 选择文件名 & "'")
If IsNull(Me!选择文件路径全名) Or Me!选择文件路径全名 = "" Then
MsgBox "请选择合适的文件名!", vbOKOnly, "系统提示"
Else
文件属性子窗体.Requery
Me.选择文件名.Requery
Me!选择文件路径名 = DLookup("文件路径", "文件存放表", "[文件名]='" & 选择文件名 & "'")
qm = DLookup("文件路径", "文件存放表", "[文件名]='" & 选择文件名 & "'") & 选择文件名
If Dir(qm) <> "" Then
[文件属性子窗体].Form![文件内容].OLETypeAllowed = acOLELinked '指定由文件链接
[文件属性子窗体].Form![文件内容].SourceDoc = qm '创建来源文件"
If Right(选择文件名, 3) = "doc" Or Right(选择文件名, 3) = "xls" Or Right(选择文件名, 3) = "txt" Then
'判断即将写入OLE控件的文件类型:.doc;.xls;.txt 三种 '==================================================================================
' 指定由源文件创建连接。特别注意:ole在未绑定84控件属性中将“是否锁定”设为”否,
'“是否有效”设为“是”,否则运行到本行代码时出错!!!
[文件属性子窗体].Form![文件内容].Action = acOLECreateLink
'===================================================================================
[文件属性子窗体].Form![文件内容].SizeMode = acOLESizeClip ' 指定裁剪,原尺寸
Else
If MsgBox("你选择的文件可能是媒体文件,你要播放或显示这个文件吗?", vbYesNo, "系统提示") = vbYes Then
qm = DLookup("文件路径", "文件存放表", "[文件名]='" & 选择文件名 & "'") & 选择文件名 '全路径全名
FollowHyperlink qm '利用系统函数调用OLE保存的文件的对应应用程序显示该文件
End If
End If
Else
MsgBox "没有找到【" & qm & "】这个文件!", vbOKOnly, "系统提示"
End If
End If
End Sub
|
|