例如:
Private Sub selectSong()
On Error GoTo errHandlerWith CommonDialog1
.CancelError = True
.InitDir = App.Path
.Filter = "音乐文件(*.mp3;*.mid;*.wav;*.wma;*.rid)|*.mp3;*.mid;*.wav;*.wma;*.rid"
.Action = 1 '相当于 CommonDialog1.ShowOpen "打开文件"对话框
End With
songName = CommonDialog1.FileName
errHandler:
If Err > 0 Then '选择了取消
songName = ""
'好像这样:如果此前没有选择过,取消之后,是空串 _
如果此前选择过,取消之后,仍然返回上次选择的文件名,不会变成空串 _
所以,强制发生‘取消错误’可以每次人工设置空串,符合‘取消’的本意
Exit Sub
End If
End Sub