トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     VB.NET上でswfファイルを扱いたいです。
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
まつむら まきお
Åê¹ÆNo.4221
投稿日時: 2004-2-25 22:59
マスター
居住地: なにわ
投稿: 633
使用環境:
FlashCS5
lion
:Win7
and Beer
Re: VB.NET上でswfファイルを扱いたいです。
まつむらです

盛り上がっているところ申し訳ないですが(^_^;)、ここは初心者部屋ですので、話題が続くようでしたら、「とにかくFlash【Flash全般】」の方でお願いいたします?

引用:
その他に情報をご存知の方はいらっしゃいませんでしょうか。。?


----------------
まつむらまきお
http://www.makion.net

eShin
Åê¹ÆNo.4211
投稿日時: 2004-2-25 17:27
半人前
居住地:
投稿: 32
使用環境:
XP Pro(SP1)+IE6
MX2004 Pro
Re: VB.NET上でswfファイルを扱いたいです。
私もC#.NETとFlashでのアプリ作成に挑戦しています。

Object.watch()の他に、setter/getter(AS2だと set/get)を使う方法もありますね。
「引数有りの関数呼び出し」と「戻り値有りの関数呼び出し」っぽく実装できます。

#「引数ありで戻り値ありの関数呼び出し」はできないのかな。。

----------
プログラム上でFlashを使うことに関してWeb上で資料を探してみたのですが、
網羅的な情報はなかなか見つからないですね。

Macromedia.comにFlashメソッドの情報とサンプルAPの資料がいくつか見つけました。

■Flash ActiveXをアプリケーションのUIに使う
Macromedia Flash Developer Centert
 └ Macromedia Flash and VB: A Potent Combination(PDF)
 └ Embedding Macromedia Flash Player in a C# App to Display Stock Information
 └ Macromedia - DevNet : FlashSlideShow Sample Application

■Flashメソッド
Flash TechNotes: Scripting with Flash Player and ActiveX 

他にBBSで断片的な話が聞けるだけという感じ。

その他に情報をご存知の方はいらっしゃいませんでしょうか。。?


----------------

tomosaka
Åê¹ÆNo.4209
投稿日時: 2004-2-25 16:34
新米
居住地:
投稿: 26
使用環境:
Pro / Pro7.2J / Player7 / W21SA
Re: VB.NET上でswfファイルを扱いたいです。
リファレンスあったのですね。気づかなかった

引用:
C#.NETでFlashを使ってアプリを作ったことがあるんですが、アプリからFlashの関数を呼び出す場合に、setVariableで値を設定して、TCallLabelでフレームアクションから呼び出してました。

今もVB.NETにSWFを乗せてアプリを作ってますが、
最近Object.watch()を使うようになってからTCallLabelの使用頻度が激減しました。
Directorはswfの再生速度の低下がもっと少なければ言うことないのですが
植木友浩
Åê¹ÆNo.4201
投稿日時: 2004-2-25 13:51
案内係
居住地: 東京
投稿: 640
使用環境:
Pro +
.Tiger +
Re: VB.NET上でswfファイルを扱いたいです。
C#.NETでFlashを使ってアプリを作ったことがあるんですが、アプリからFlashの関数を呼び出す場合に、setVariableで値を設定して、TCallLabelでフレームアクションから呼び出してました。

Flash内のオブジェクトを取り出して、何かしたいって場合はDirectorの方が使いやすいですね。


----------------
Tomohiro Ueki
RSSリーダー公開中
チーム-10kg達成

野中文雄
Åê¹ÆNo.4200
投稿日時: 2004-2-25 13:45
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: VB.NET上でswfファイルを扱いたいです。
補足の蛇足です。

Flash Methodsには、英文のリファレンスがあります。setVariablesも掲載されています。
引用:
makiyosさんは書きました:
逆にアプリからFlash側に情報を渡したり制御したりできるように、
様々なメソッドが用意されています。
OpenSpace本部さんのFlash2.3 メソッド/プロパティ一覧が参考になると思います。

また、この一覧にはありませんが、SetVariableメソッドで、変数に値を渡すことができます。


----------------
 

makiyos
Åê¹ÆNo.4199
投稿日時: 2004-2-25 13:31
新米
居住地:
投稿: 12
使用環境:
FlashMX2000
WindowsXP
Re: VB.NET上でswfファイルを扱いたいです。
shintさん、こんにちは

すでに解決されているようですが、
ちょっとだけ補足させてください。

Flash側からアプリに情報を渡すには、fscommandを経由するわけですが、
逆にアプリからFlash側に情報を渡したり制御したりできるように、
様々なメソッドが用意されています。
OpenSpace本部さんのFlash2.3 メソッド/プロパティ一覧が参考になると思います。

また、この一覧にはありませんが、SetVariableメソッドで、変数に値を渡すことができます。
これは非常に便利です。

余談ですが、Browserコントロールは、MSが頻繁に仕様を変えるので、
今までに何度も困ったことになった、という情報を付け加えておきましょう。
(IEのバージョンにも依存します)
shint
Åê¹ÆNo.4195
投稿日時: 2004-2-25 11:37
新米
居住地: 東京都中野区/千葉県千葉市
投稿: 4
使用環境:
: WinXP Home Edition
: Flash MX
その他 : Visual Basic.NET 2003
Re: VB.NET上でswfファイルを扱いたいです。
tomosakaさん、素早くご丁寧なお返答ありがとうございました。
頼もしい限りです!
野中氏のMacromedia Flash非公式テクニカルノートの
サイト、是非拝見させて頂きます。
今後とも宜しくお願いします。
shint
Åê¹ÆNo.4194
投稿日時: 2004-2-25 11:30
新米
居住地: 東京都中野区/千葉県千葉市
投稿: 4
使用環境:
: WinXP Home Edition
: Flash MX
その他 : Visual Basic.NET 2003
Re: VB.NET上でswfファイルを扱いたいです。
解決しました^^
解決方法・・・

1..FLAファイルにて、
タイムラインが最長のレイヤの最終フレームにて
FSCommandを追加し、コマンドを"Fin"、パラメータを"終わり"
とし、ムービーの書き出しにてSWFファイルを作成しました。

2.VB.NETにて、
ShockWave Flash(Flash.OCX)コンポーネントを追加して、
フォームに配置し、またボタンを一つ配置し、以下のコードを
書きました。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.AxShockwaveFlash1.LoadMovie(0, "c:\XXXXXX\Flash.swf")
Me.AxShockwaveFlash1.Play()
End Sub

Private Sub AxShockwaveFlash1_FSCommand(ByVal sender As Object, ByVal e As AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent) Handles AxShockwaveFlash1.FSCommand
Me.AxShockwaveFlash1.StopPlay()
MessageBox.Show(e.args, e.command)
End Sub

ボタンを押すと、Flash.swfが読み込まれ再生し、最後までくると
swfファイルからFSCommandが送られ、再生が終了したことを
知ることができます。
この際、VB.NETでは、FSCommandのコマンド及びパラメータは
それぞれe.command及びe.argsで受け取るようです。

上の例では、再生が終了すると、メッセージボックスが出て
キャプチャーが"Fin"、メッセージ内容が"終わり"となります。
私が作ったswfは何故かループ再生になっていたので、
Me.AxShockwaveFlash1.StopPlay()
の一文を追加して、ムービーがループしないよう止めています。

まだswfファイルの終了のタイミングをVB側で受け取る、という
ことしかできませんが、今後とも質問あるいはできる範囲での
質問への回答を頑張りたいと思いますので宜しくお願い致します。m(。_。)m
tomosaka
Åê¹ÆNo.4193
投稿日時: 2004-2-25 11:29
新米
居住地:
投稿: 26
使用環境:
Pro / Pro7.2J / Player7 / W21SA
Re: VB.NET上でswfファイルを扱いたいです。
Browserコントロール経由での制御はしたことがないのですが、
ActiveXを使用したやり方ですとFSCommandを使えば簡単にできます。

Flash側
動画終了時に

 fsCommand("swfからのコマンド名","VBに渡したいパラメータ" ) ;


VB側
Private Sub swfCtrl_FSCommand(ByVal eventSender As System.Object, ByVal eventArgs As AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent) Handles swfCtrl.FSCommand
 Select Case eventArgs.command
  Case "swfからのコマンド名"
   '処理文を書く
 End Select
End Sub


これでSWFからのメッセージを受け取れます。

FSCommandについては野中氏のサイトが参考になるとおもいます。
Macromedia Flash非公式テクニカルノート
shint
Åê¹ÆNo.4189
投稿日時: 2004-2-25 9:17
新米
居住地: 東京都中野区/千葉県千葉市
投稿: 4
使用環境:
: WinXP Home Edition
: Flash MX
その他 : Visual Basic.NET 2003
VB.NET上でswfファイルを扱いたいです。
使用環境 WinXP/FlashMX/VB.NET2003

初めまして 先ほど会員登録をさせて頂きましたShintです。
VB.NETでゲームを作っているのですが、ゲーム内の動画部分に
swfファイルを使用したいと考えております。
ところが、swfファイルの再生が終わったことをVB上で知る
方法がわからず、困っております。

現状では、VB.NETでフォームを作成し、Browserコントロール
(VBのコントロールの一種。InternetExplorerと同じようなもの)
を使用してそこに.Navigate2メソッドでswfを読み込ませて
います。過去ログを読むとShockWave Flashコントロールを
使った制御例が出ていましたが、どちらがよいのでしょうか。
再生終了後、他のswfを読み込んだり、VB上でゲームに切り
替わる処理等の別処理を行いたいと考えております。

VB.NETのベテランさんのアドバイスの多くは、DirectXを使え
という答えが大半ですが、自分はFlashの方が馴染みがあり、
できればFlashとVB.NETで今後もやっていきたいと考えて
おります。未熟者ですが、どなたかご教授の程を宜しくお願い
致します。
:-)
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops