没采用在“部件”中添加ShockwaveFlash方法。
采用Controls.Add("ShockwaveFlash.ShockwaveFlash", "Flash")
在form1中运行Flash文件程序,如
Private Sub Form_Load()
  Dim tmpCtl As Object
   With Form1
    Set tmpCtl = Me.Controls.Add("ShockwaveFlash.ShockwaveFlash", "Flash")
    '
    tmpCtl.Visible = True
    tmpCtl.Width = .Width
    tmpCtl.Height = .Height
    tmpCtl.object.LoadMovie 0, App.Path & "\testButton.swf"
    tmpCtl.object.SetVariable "vStr", "aa,a1,QuitProgram"    
  End With
End Sub
--
如何采用在“部件”中添加ShockwaveFlash方法。下面程序成立。
Private Sub ShockwaveFlash1_FSCommand(ByVal command As String, ByVal args As String)
  Debug.Print command
End Sub发此帖的目的是
如何采用Controls.Add("ShockwaveFlash.ShockwaveFlash", "Flash")
ShockwaveFlash1如何改,能与上面程序等价。谢谢
Private Sub ????_FSCommand(ByVal command As String, ByVal args As String)
  Debug.Print command
End Sub

解决方案 »

  1.   

    Private Sub Form_Load()
      Dim ShockwaveFlash1 As Object
        Set ShockwaveFlash1= Me.Controls.Add("ShockwaveFlash.ShockwaveFlash", "ShockwaveFlash1")
        With ShockwaveFlash1
        .Visible = True
        .Width = .Width
        .Height = .Height
        .object.LoadMovie 0, App.Path & "\testButton.swf"
        .object.SetVariable "vStr", "aa,a1,QuitProgram"    
      End With
    End SubPrivate Sub ShockwaveFlash1_FSCommand(ByVal command As String, ByVal args As String)
      Debug.Print command
    End Sub
      

  2.   


    谢谢回帖,明白了。
    最佳的设置是ShockwaveFlash1,不要重新起名设置,具有可操作性。
      

  3.   

    Private Sub Form_Load()
      Dim ShockwaveFlash1 As Object
        Set ShockwaveFlash1= Me.Controls.Add("ShockwaveFlash.ShockwaveFlash", "ShockwaveFlash1")
        With ShockwaveFlash1
        .Visible = True
        .Width = .Width
        .Height = .Height
        .object.LoadMovie 0, App.Path & "\testButton.swf"
        .object.SetVariable "vStr", "aa,a1,QuitProgram"    
      End With
    End Sub
    以上部分程序通过。
    下面部分没有通过。请问大侠还有什么高招。谢谢
    Private Sub ShockwaveFlash1_FSCommand(ByVal command As String, ByVal args As String)
      Debug.Print command
    End Sub
      

  4.   

    http://www.uipower.com/bbs/thread-128474-1-1.html
    所有表述同这个帖子相同。
    Private ShockwaveFlash1 As Object
    改为
    Private WithEvents ShockwaveFlash1 As ShockwaveFlashObjectsCtl.ShockwaveFlash
    提示“编译错误:用户定义类型未定义”(在工程->部件 中未选择 Shockwave Flash)
    如果在工程->部件 中未选择 Shockwave Flash,则在
    Set ShockwaveFlash1 = Controls.Add("ShockwaveFlash.ShockwaveFlash", "Flash")
    语句提示“实时错误'50153' 'ShockwaveFlash.ShockwaveFlash'不能被加入因为它被引用但在工程中未被任何项目使用。请把工程选项中的'Remove information about unused ActiveX Controls'项取消选定,来改正此错误。