Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-settings.php on line 472

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-settings.php on line 487

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-settings.php on line 494

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-settings.php on line 530

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-includes/cache.php on line 103

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-includes/query.php on line 21

Deprecated: Assigning the return value of new by reference is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-includes/theme.php on line 623
馬鹿全 - Flex Archive

Home > Flex Archive

Flex Archive

1フレーム目へ値を渡したい。


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

問題

Frame メタデータタグを使用し「ファクトリークラス」を設定することで
メインクラスを生成するためのファクトリークラスを作る事ができる。
このファクトリークラスは2フレームからなる MovieClip クラスで
1フレーム目には「ファクトリークラス」と「それを構成するために必要なクラス」が書き出され、
2フレーム目には「それら以外のクラス」が書き出される。

このファクトリークラスに触れることなくファクトリークラスに値を送るにはどうしたらよいか。

制約1. 1フレーム目で値を受け取れる事。

制約2. ファクトリークラスを変更して値を渡すことは不可。
値を受け取るための仕組みを作ることはよいとするが、
値を直接入力することは許可しない。

制約3. ファクトリークラスを継承することは不可
継承して値を渡す方法は許可しない。

制約4. FlashVars での値の受け取りは不可

制約5. 最終的には SWC にする。(追記2参照)

これが今抱えている課題。

うーん色々考えて見た。

Continue reading

  • Comments (Close): 0
  • Trackbacks (Close): 0

Spark Project に Embedder をコミット


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

Spark Project に Embededr をコミットしました!

前から Spark しようと思ってたのをやっと出せた!

ダウンロードはこちら

Continue reading

  • Comments (Close): 0
  • Trackbacks (Close): 0

FlashDevelop 3.0.0 RC5 リリースされたよ。


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

ペース上がってきましたねー。

RC5 は以下から
http://www.flashdevelop.org/community/viewtopic.php?f=11&t=4856

今回も主にバグフィックスですよ。
RC5 は RC2~4までと完全に互換性がありますが、いくつかの Syntax ファイルを追加して移動させました。
だそうです。

過去のバージョン情報やインストール方法、最新情報などは以下から。
http://blog.bk-zen.com/2009/07/12/190/

詳細は以下から。

Continue reading

Frame メタデータタグでプリローダを作る時の注意


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

ActionScript3.0 の Frame メタデータタグを使うと プリローダを作ったりするときに便利だったりします。
その時の注意。
Error #2044: ハンドルされていない IOErrorEvent : text=Error #2036: 読み込みが未完了です。
みたいなエラーが出て、困ったりしたことはないですか?
しかも IE では出ず、 FireFox で 2回連続 F5 で更新とかすると起きるエラー。
どこで起きているのかも分からず、ひたすら莫大に広がったソースのいろんなところをコメントにしてみたりして、やっと見つけた。

Continue reading

S2Flex2 コンポーネント を使った Flex2 を Flex3 へ


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

ども。
そういえばこの間 Flex2 で作られたのを AIR 化することをやってたら、
↓のようなランタイムエラーがでた。

VerifyError: Error #1053: org.seasar.flex2.rpc.remoting.S2Flex2Service の S2Flex2Service のオーバーライドが無効です。

何だこれって思って色々見てたら Flex3 に変えたことによるエラーっぽいことがわかった。
S2Flex2 コンポーネントを S2Flex2 components 2.0.0-Beta1(http://s2flex2.sandbox.seasar.org/ja/#download)
に変えたら直った。
S2Flex2 って Flex3 に対応したら S2Flex3 とかに名前を変えるのだろうか?

それとも S2FlexTo とかって意味だとかで、Flex2 に限定したものではないから大丈夫なのか?

まぁいいや。
とりあえず名前を考えるってのはむずかしいんだなぁ・・・。

みつを

じゃなくて、 昨日休日なのに出勤してしまったJCでした。

  • Comments (Close): 0
  • Trackbacks (Close): 0

Flex と FlashCS3 で SWF を作るときの 18 のポイント+α


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

以前も書いたことですが、色々増えてきたのでまとめてみた。
Flex と Flash CS3 でハイブリッドな SWF を作る場合、
大抵は Flex で土台を作り、グラフィック部分などを Flash で作るということになるだろう。
その際に俺が実際引っかかったりした部分をまとめた。
なので Flash しか関係ないじゃんとか Flex しか関係ないじゃんと思わずに
Flash しか関係ないじゃん?って所は それを制御する側がいるということを考えて
Flex しか関係ないじゃん?って所は それに制御される側がいるということを考えて
読んで欲しい。

Continue reading

Flex と Flash CS3 の ハイブリッド SWF について


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

どうも JC です。
Flex と Flash CS3 ではコンパイラが違い、挙動も違ったりします。
その二つを掛け合わせて作る ハイブリッドな SWF についてだらだらと書いてみる。

Continue reading

Flex itemRendererのバグ?


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

お久しぶりです。
JC です。

前にも書いたとおり、ここんところ Flex 三昧です。

さて、今回 Flex でコンテンツを作ったりしてみているんだが、
何かバグっぽい挙動があった。
Flex の DataGrid などのコンポーネントには itemRenderer を指定して、
データの表示を自分でカスタマイズできる。

今回は DataGrid の中に TileList などが配置できないものかといろいろいじってみた。
DataGrid に指定する itemRenderer の中に TileList を指定して、
TileList に さらに itemRenderer を指定するということをやってみた。
すると、
最初は上手くいっているのだが、ソートをしてみたり、
ドラッグをすばやくやってみるなどすると、
Flex のイベントのハンドリングがバグを起こして、一切なにも反応しなくなる。
さらに画面のサイズを変えたりしてもそれは起こった。
スクロールバーの表示がおかしくなったりもする。
さて・・・どうしたらいいものか。

と、言うのも、
Flex で 以下のような(※図1)グリッドが作りたい。
しかし、調べてみたがそんなコンポーネントなーい。
じゃあ自分で作ろう。

はい、バグー。

 ※ 図1

Ver
Data
a
Data1
Data2
Data3
Data4
Data5
b
Data6
Data7
c
Data8
Data9
Data10

Data のところは左揃えで配置されて、
Data それぞれがドラッグ&ドロップ で違う列や違う行に移動できる。

誰か作ってそうなものだが・・・。

どなたか知っていたら教えてください。

  • Comments (Close): 0
  • Trackbacks (Close): 0

Flex で読み込んだ SWF を制御


Deprecated: Function split() is deprecated in /virtual/jessejds/public_html/blog.bk-zen.com/wp-content/themes/wp.vicuna.ext/functions.php on line 358

どうも、ひさびさの JC です。

最近 Flex の勉強中。
それで、どうすれば良いのかわからなかったのでいろいろ調べてみてわかったことのメモ。
※ Flex の和書ってなかなかないね・・・。仕方なく洋書を読む。

Flex で外部 SWF ファイルを読み込むときはどうするか。
本当は Flex Component Kit for flash cs3 を使って SWC 形式の コンポーネントにして
制御しやすそうな形にするつもりでいた。
でも、いろいろ調べてみたら、
SWC 形式で Flex Component にした場合
大本の MC のタイムラインの ActionScript は動くが、
その MC にネストされている MC の ActionScript はまったく動かないことがわかった。

って事で、SWF 化 したものを Flex 側で読み込んで制御してしまおう。
という考えに落ち着いた。

まず、Flex に SWF ファイルを読み込むやり方はいくつかある。
Image を使ったりなんかいろいろあったが、
SWFLoader というのがあったのでそれを使ってみた。

<mx:SWFLoader id="myLoader" source="test.swf"
    creationComplete="initTest();" />
<mx:Button label="hoge" buttonDown="btnPressTest();" />

こんな感じで外部 SWF を読み込む。
creationComplete で指定したメソッドは SWF ファイルの読み込みが終わったら呼ばれるメソッドだ。
ボタンのほうは クリックされたら btnPressTest というメソッドが呼ばれるようにしてみた。
でわ、その関数を書いてみる。

initTest() では何をするか。
特に何もしなくても良いが、今回は、読み込んだ SWF ファイルの Root を取り出してみる。

import flash.display.MovieClip;
private var rootMc: MovieClip;
public function initTest() {
	this.rootMc = myLoader.content as MovieClip;
}

こうすると、 読み込まれた SWF ファイルの Root に this.rootMc でアクセスすることができる。

では、実際制御してみよう。
読み込む SWF ファイルの 構造は以下のようにすることにした。
root に hoge_mc (MovieClip) を配置。hoge_mc 内では適当なムービーが流れていることにした。
root に moja_txt (ダイナミックテキスト(TextField)) を配置。 “Test” という文字列を入力。

制御側はボタンで制御することにした。

import org.flashdevelop.utils.FlashConnect;
public function btnPressTest() {
	this.rootMc.hoge_mc.stop();
	FlashConnect.trace(this.rootMc.moja_txt.text);
	// output: Test
	this.rootMc.moja_txt.text = "hoge";
}

こんな感じで書いてみた。
FlashConnect は Flex の開発環境として、 Flash Develop 3 を使っているので Trace を出す方法が FlashConnect になっている。
くわしくはこっち。

これで、Flex 側から SWFを制御できる。
ボタンをクリックすると、hoge_mc の ムービーが止まり、
moja_txt の内容が Trace されて、それが “hoge” に書き換わる。

まぁ簡単だがこんな感じで。
これで、逆ができないかなぁ~と思っている。
Flash で作成した SWF から Flex 側を制御する。
もちろん読み込むのは Flex 側。

ビジターパターンとか勉強しなきゃかな。

  • Comments (Close): 0
  • Trackbacks (Close): 0

Home > Flex Archive

Search
Feeds
Meta

Return to page top