この記事のURL

http://www.dango-itimi.com/blog/archives/2010/001012.html


FLASH tips Flash CS4 上でリンケージクラス設定を行うと jsfl からリンケージクラス設定変更は不可となる

Flash CS4 上から一度でも設定されたリンケージクラス名は、Flash CS4 上にて「ActionScript用に書き出し」のチェックボックスを外す等をして リンケージ設定を完全に解除しない限り、jsfl からはリンケージクラス名設定は変更不可能な状態となってしまうようです。

「Flash CS4 上からリンケージ設定が完全に解除された状態」とは、「対象となるアイテムのライブラリウインドウ内の『リンケージ』の項に何も表示されていないない状態」とします。(図2)

Flash CS4 上でリンケージ設定を行ったアイテムに対し jsfl でリンケージ設定の解除命令(Item.linkageExportForAS = false)を実行しても、ライブラリウインドウ内の『リンケージ』の項には、設定されていたクラス名のみが表示される状態となり(「書き出し:」という文字列は消える)、完全解除とは言わない状態となります。(図3)

Flash CS4 からのリンケージ設定が完全に解除されていない状態では、jsfl からリンケージクラス名を設定しようとしても、その設定は fla ファイルへは反映されません。

jsfl にて Flash CS4 で行われたリンケージ設定を完全に解除する方法を調査してみましたが、現在のところわからない状況です。対象となるアイテムを複製し元アイテムは削除…といった方法で解決できるかもしれませんが、削除するという操作を入れるのは危険なので、調査対象からは外しています。


検証は以下の環境で行いました。

 Flash CS4 10.0.2
 Windows Vista Home 64bit

OS や Flash のバージョンによっては上記現象の動作が異なる可能性があります。


開発途中では、どんどんクラス名やクラスのディレクトリ構造の変更をかけるので、普段は jsfl でリンケージ設定を行っているのに、まれに Flash CS4 上のシンボルプロパティから設定してしまったりすると、後にそれが原因でつまずいてしまうことが結構あります。


参考: Flash の拡張機能 Item オブジェクト
http://help.adobe.com/ja_JP/Flash/10.0_ExtendingFlash/WS5b3ccc516d4fbf351e63e3d118a9024f3f-7f92.html


参考図

図1) リンケージ設定が行われている状態

図2) リンケージ設定の解除が完全にが行われている状態

図3) リンケージ設定の解除が完全にが行われていない状態

図4) 図3の状態でシンボルプロパティを開いた状態
   この状態から「OK」ボタンを押すと図2の状態に移行する

[ FLASH ] [ tips ] 投稿者 siratama : 2010年02月13日 21:20

トラックバック

http://www.dango-itimi.com/blog/mt-tb.cgi/972

» jsfl からのリンケージクラス設定解除が効かない場合は fla ファイルを保存して起動し直す from X-LABO
苦節二年半、今までの面倒は何だったのでしょうか。 本日ふと思いついた方法で、js... [続きを読む]

トラックバック時刻: 2012年08月10日 17:17

コメント

以下コメントを書き込むだけでは、管理人には通知が行われません。通知を行いたい場合、管理人の書き込みに「返信」を押してコメントをしていただくか、あるいは Google+, Twitter へご連絡ください。




[EDIT]