我对CommonDialog进行后,我怎么知道是按了打开按钮,还是取消按钮。代码中要用On Error GoTo ErrTrap,不能用On Error Resume Next,

解决方案 »

  1.   

    If Err.Number = cdlCancel Then
        MsgBox "取消!"
        Err.Clear
    End If
      

  2.   

    用on error resume next过掉比较合适
      

  3.   

    Private Sub Command1_Click()
    On Error Resume Next
    CommonDialog1.CancelError = True
    CommonDialog1.ShowOpen
    If Err.Number = 32755 Then
         MsgBox "选择取消按钮"
    Else
        MsgBox CommonDialog1.filename
    End If
    End Sub
      

  4.   

    用On Error GoTo ErrTrap
    Private Sub Command1_Click()
    On Error GoTo ErrTrap
    CommonDialog1.CancelError = True
    CommonDialog1.ShowOpen
    MsgBox CommonDialog1.filename
    Exit Sub
    ErrTrap:
    If Err.Number = 32755 Then
         MsgBox "选择取消按钮"
    End If
    End Sub
      

  5.   

    程序中加入CommonDialog1.CancelError = True这样当你按下取消按钮时会出生一个错误你可以通过错误处理来捕获错误看是否按下了取消按钮
      

  6.   

    in form property page set conmmdilog's cancelerorr = true;
    on error resume next
    dlg.showopen
    if err=32755 then
    select cancel