关于ShowOpen控件
主 题: 关于ShowOpen控件
作 者: Andy_hyou (碎羽)
等 级: ^
信 誉 值: 98
所属论坛: VB VBA
问题点数: 50
回复次数: 7
发表时间: 2003-7-9 13:07:21
当用ShowOpen控件让用户选择打开文件的时候,怎么获得用户选择了“打开”还是“取消”?或者是“X”?多谢!
回复人: cdknet(VB版主) ( 一星(中级)) 信誉:99 2003-7-10 11:46:08 得分:0
判断 FileName属性咯
回复人: alicky(周松) ( 五级(中级)) 信誉:100 2003-7-10 11:50:23 得分:0
With CommonDialog1
.CancelError = False
.InitDir = StrAppPath
.DialogTitle = "请选择数据库"
.Filter = "*.mdb|*.MDB"
.ShowOpen
End With
If CommonDialog1.FileTitle <> "" Then
msgbox "取消"
else
msgbox "已选择"
end if
回复人: lxqlogo0(群子) ( 一星(中级)) 信誉:92 2003-7-10 11:52:38 得分:0
With dlgCommonDialog
.DialogTitle = "Open"
.Flags = &H4
.CancelError = True
'ToDo: set the flags and attributes of the common dialog control
.Filter = "java文件(*.java)|*.java|HTML文件(*.html;*.htm)|*.html;*.htm|文本文件(*.txt)|*.txt|All Files (*.*)|*.*"
.ShowOpen
If Len(.FileName) = 0 Then
Exit Sub
End If
sFile = .FileName
End With
回复人: cdknet(VB版主) ( 一星(中级)) 信誉:99 2003-7-10 11:57:41 得分:0
如果 Object.FileName 为空,说明没选择文件或点了取消或是 "X",呵呵呵,反之就是……
回复人: Andy_hyou(碎羽) ( 一级(初级)) 信誉:98 2003-7-10 13:50:40 得分:0
有问题,第一次运行正常,但是当选中并打开过一个文件后,FileName和FileTitle里似乎就都保存了刚才的文件名,第二次运行时,无论是否输入文件名,是否选择打开,FileName和FileTitle都不为空。而且FileTitle是只读属性,不能设其为空。
咋办?
回复人: Andy_hyou(碎羽) ( 一级(初级)) 信誉:98 2003-7-10 13:57:51 得分:0
另外,
If CommonDialog1.FileTitle <> "" Then
Workbooks.Open(FileTitle)
else
msgbox "cancel"
end If
如果用户选择的文件已处于打开状态,系统会弹出对话框说“此文件已打开,是否要二次打开”之类的,如果此时用户选择否,那么Workbooks.Open(FileTitle)语句就无法执行,就会出现错误,怎么办?
请高手指点!!!
回复人: appleliuwei(小苹果) ( 一级(初级)) 信誉:100 2003-7-10 15:41:39 得分:50
我的做法是不显示系统提示,自己做这个对话框,因为不知道如何取得系统对话框的属性
不知道高手有没有别的办法
该问题已经结贴 ,得分记录: appleliuwei (50)、