我想问个问题,在vc里如何关联用FLASH做的按钮,控制条,输入框等控件
我在工程里加控件swflash.ocx的时候就说控件没有注册,怎么注册?
注册不了我就在ClassWizard中引入控件,得到两个类,发现是从
COleDispatch派生的,而不是CWND派生的,我该怎么用?
如果这个问题解决了,可以正确的显示FLASH了,我又该如何得到在
在FLASH中的按钮什么的ID,和各种事件消息,如CLICK,如控制条的位置?
如果觉得分数不够可以再加,希望大侠回答的时候尽量详细,我给分也决不吝啬!!!

解决方案 »

  1.   

    具体细节我不清楚,但是你可能需要弄清以下的问题:
    1.FSCOMMAND的用法.可以到MicroMedia的网站看看.
    2.如何截获该控件的窗口过程.可以使用MsgHook32控件.
    3.注册用Regsvr32.exe.
    4.利用屏幕坐标获得控件的句柄.
    这样,你就可以随心所欲了,能学到不少东西的,祝你早日完成作品.
    给分吗?:)不给拉倒呗......
      

  2.   

    //if (flash==installed){//RightClick;
    //Add(ActiveX Control);
    //}
      

  3.   

    关于在vc里如何关联用FLASH做的按钮,控制条,输入框等控件:
       vc通过FSCOMMAND事件处理,判断command和arg参数就行了。(事先约好,在flash中的按扭事件中发FSCOMMAND事件)
      

  4.   

    Project->Add to project->Components and controls->Registed ActiveX controls->Shockwave Flash Object
    这样控件条上就会出现一个Flash控件,拖一个到对话框中去,双击,使它与一个CSockwaveFlash对象关联!关注如何取得点击事件。
      

  5.   

    呵呵,多谢大家的帮助,我已经将控件注册上去了
    控件提供了三个事件的接口
    OnProgress
    OnReadyStateChange
    FSCommand
    如楼上的兄弟说的
    我现在去查查这几个函数的说明,要谁明白或有资料
    也请说一声,等再过两天我就发帖结帐
      

  6.   

    class CShockwaveFlash : public CWnd
    中包含了大量的函数
    void CKkkDlg::OnFSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args) 
    事件触发函数也有两参数,我该去哪里找他们的说明呢?MicroMedia的网站??
      

  7.   

    我真是个笨蛋,刚明白king_koo(向东)的意思
    这主要是我对FLASH一点都不了解的原因,我再最后问一句
    是不是在flash的制作中比如一个按钮按下的时候,可以设置一个
    command和一个arge,用来标识这个事件,而这个事件在VC中
    可触发OnFSCommandShockwaveflash1函数,然后判断事件就
    可以知道发生了什么事件,还有arge可以用来传送比如进度条的
    位置,文本框的内容什么的如果是我这么理解的话,还有最后一个问题,怎么用消息控制FLASH呢
    比如说,发个消息让按钮自己按下去又发一个串在文本框中显示出来?
      

  8.   

    没错!
    在flash的制作中比如一个按钮按下的时候,可以设置一个FSCommand(command,arge)语句用来标识这个事件,而这个事件在VC中可触发OnFSCommandShockwaveflash1函数,然后判断事件及command,arge两个参数就可以知道发生了什么事件,并可以用来传送比如进度条的位置,文本框的内容什么的。消息控制FLASH?我只知道vc里通过m_flash.SetVarianable(aa,bb)可以与flash间传递变量。
      

  9.   

    thank u everyone
    support