Shockwave Flash ActiveX Object イベント

注:

ActiveX コントロールは、DotNet フレームワークとそのコントロールを考慮して、最新バージョンの Microsoft Windows オペレーティング システムで非推奨となりました。

MAXScript では引き続き ActiveX コントロールがサポートされますが、これらは MAXScript にアクセス可能なシステムにインストールおよび登録する必要があります。

ActiveX コントロールの代わりに、MAXScript では、3ds Max 9 以降において DotNet コントロールがサポートされます。

使用する ActiveX コントロールがシステムにインストールされていない場合、次の例は動作しない可能性があります。

次のサンプル スクリプトでは、テキスト オブジェクトを作成し、そのテキストを Shockwave Flash Object から送信される FSCommand イベント引数値に設定します。

   rollout rFlash "Shockwave Flash Object"
   (
   local txtObj
   fn checkTextObject =
   (
   if $text01 == undefined then
   (
   txtObj = text text:"" name:"text01"
   addModifier txtObj (extrude amount:10)
   txtObj.wirecolor = red
   rotate txtObj 90 x_axis
   )
   else ( txtObj = $text01 )
   )
   activeXControl axFlash "{D27CDB6E-AE6D-11CF-96B8-444553540000}" height:200 width:300 align:#left
   on axFlash OnReadyStateChange arg1 do format "handler: OnReadyStateChange : %\n" arg1
   on axFlash OnProgress arg1 do format "handler: OnProgress : %\n" arg1
   on axFlash FSCommand arg1 arg2 do
   (
   checkTextObject()
   txtObj.text = arg1 + "+" + arg2
   max tool zoomextents all
   )
   on rFlash open do
   (
   axFlash.movie = "e:\\Movie1.swf"
   axFlash.movie = "e:\\Movie1.swf" -- need to load 2nd time sometimes
   checkTextObject();
   )
   )
   flashFloater = newRolloutFloater "Shockwave Flash Object" 350 300 10 10
   addRollout rFlash flashFloater