看网上很多帖子都说用 ShockwaveFlash1.SetVariable(varName,Value),但一直没有成功,SetVariable调用之后Flash的动态文本显示内容并没有任何的改变,特来求救,熟悉的大侠指导下,多谢

解决方案 »

  1.   

    用FlashPlayerControl控件,可以用回调函数
      

  2.   

    了解了一下,FlashPlayerControl是要付费的,而且价格不菲,呵呵
    对于AS的脚本不是很熟悉,估计是导致我提到的方法无法成功的关键因素,继续了解下,多谢LZ回复
      

  3.   

    测试了下TShockwaveFlash回调的方式也可以成功,但遇到另外一个问题就是Flash循环播放的情况下,每次再开始的时候动态文本的内容就又“复原”为初始值了,是不是有什么办法可以解决下?
      

  4.   

    应用程序向FLASH发送命令后,需要在FLASH里面作相应的处理。以一问一答的形式作交互
      

  5.   

    http://hi.baidu.com/lael80/blog/item/eae103d5c18ea5c451da4b92.htmlonfuncall事件
      

  6.   

    给flash写个外调函数,用控件直接调用函数来更新,就OK了!查看flash的ExternalInterface类,注意这是AS3.0的。可以联系我QQ:627382551
      

  7.   

    这个应该是用js作为中间桥梁。
    1、flash我记得有一个与js相应的方法,你去相应那个方法然后再动态的调用一个按钮click
    2、Delphi用web*控件获取js的动态button.click()
    这样flash与delphi就能相互相应。
    ----------------------------------------------
      

  8.   

    目前回调测试还是可以更新元素内容的,但是不知为何中文的时候出现乱码,英文字符和数字正常。另外就是如何通过外部调用把当前的内容导出为gif或者bmp格式输出,请大侠继续指教
      

  9.   

    直接用 as 里面的fs_command   命令就可以交互了。。
      

  10.   

    fs_command 已经属于过去式了,现在主要依靠 ExternalInterface 接口处理了,就是对这个接口不是很了解
      

  11.   

    这个问题的关键不在于 delphi 的代码,是你的 flash 没有写好,flash 中,对于动态文本,除了有"名称"( name) 外,还有一个"变量名称" (variant name), 你很可能只设置了名称,没有设置 "变量名称", ShockwaveFlash1.SetVariable(varName,Value) 上的 varName 是使用  "变量名称" 滴