求问一个简单的CommonDialog控件的有关问题
求问一个简单的CommonDialog控件的问题。
我用CommonDialog控件对话保存一个文件。
CommonDialog1.ShowSave
CommonDialog1.Filter = "(*.dat)|*.dat"
strFileName = CommonDialog1.FileName
If Dir(strFileName) <> "" Then
If MsgBox("文件已经存在,是否覆盖?", vbInformation + vbOKCancel, "提示") = vbCancel Then
Exit Sub
End If
End If
为什么对话框出来时我点击“取消”按钮,没有退出该对话框,而是出来“文件已经存在,是否覆盖”再点击取消才退出。
这个是那个地方设置不对,请朋友们指正一下,谢谢!
------解决方案--------------------
If Dir(strFileName) <> "" And strFileName <> "" Then '增加一个判断
------解决方案--------------------
on error resume Err
CommonDialog1.ShowSave
CommonDialog1.Filter = "(*.dat)|*.dat"
strFileName = CommonDialog1.FileName
If Dir(strFileName) <> "" Then
If MsgBox("文件已经存在,是否覆盖?", vbInformation + vbOKCancel, "提示") = vbCancel Then
Err: Exit Sub
End If
End If
------解决方案--------------------
我用CommonDialog控件对话保存一个文件。
CommonDialog1.ShowSave
CommonDialog1.Filter = "(*.dat)|*.dat"
strFileName = CommonDialog1.FileName
If Dir(strFileName) <> "" Then
If MsgBox("文件已经存在,是否覆盖?", vbInformation + vbOKCancel, "提示") = vbCancel Then
Exit Sub
End If
End If
为什么对话框出来时我点击“取消”按钮,没有退出该对话框,而是出来“文件已经存在,是否覆盖”再点击取消才退出。
这个是那个地方设置不对,请朋友们指正一下,谢谢!
------解决方案--------------------
If Dir(strFileName) <> "" And strFileName <> "" Then '增加一个判断
------解决方案--------------------
on error resume Err
CommonDialog1.ShowSave
CommonDialog1.Filter = "(*.dat)|*.dat"
strFileName = CommonDialog1.FileName
If Dir(strFileName) <> "" Then
If MsgBox("文件已经存在,是否覆盖?", vbInformation + vbOKCancel, "提示") = vbCancel Then
Err: Exit Sub
End If
End If
------解决方案--------------------
- VB code
Option Explicit Private Sub Command1_Click() Dim strFileName As String On Error GoTo ErrTocjl CommonDialog1.ShowSave CommonDialog1.CancelError = True CommonDialog1.Filter = "(*.dat)|*.dat" strFileName = CommonDialog1.FileName If strFileName <> "" Then If Dir(strFileName) <> "" Then If MsgBox("文件已经存在,是否覆盖?", vbInformation + vbOKCancel, "提示") = vbCancel Then Exit Sub Else '覆盖的代码 End If End If End If ErrTocjl: End Sub