0

テキストを含むグラフィックを Flash CS4 で作成しました。適切な文字を埋め込み、それを MovieClip としてライブラリに保存しました。次に、それを SWC ファイルにエクスポートしました。

次に、AS3 コード (Flex SDK/メモ帳を使用) で、ムービークリップをインポートし、いくつかのマウス イベントを割り当てて、ボタンとして使用できるようにします。

残念ながら、この方法でインポートしたすべてのグラフィック内テキストには「I」マウス カーソルがあり、テキストは選択可能です。これはフラッシュ アプリケーションからフォーカスを奪うものであり、良くありません。

私ができるテキストフィールドがあるとき、私は知っています:

var myButton:TextField = new TextField();
myButton.MouseEnabled = false;

ただし、インポートしているムービークリップの場合、これは効果がありません。

var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.MouseEnabled = false;  // No effect

// Plus some other things I learned:
myButton.selectable = false;    // also no effect
myButton.MouseChildren = false; // No effect

私は何を間違っていますか?

4

2 に答える 2

3

Flash ide で、textField を選択し、プロパティ パネルに移動して、「Ab」という文字が含まれるボタンのチェックを外します。これにより、テキストが選択できなくなります。

于 2009-04-25T20:53:25.610 に答える
1

テキストを保持するムービー クリップをマウス対応にしないように設定する場合は、mouseEnabled と mouseChildren の両方のプロパティを設定する必要があります。mouseEnabled は、特定のムービー クリップがマウス イベントを取得できないことを意味しますが、ムービー クリップの子 (その中のテキスト フィールドなど) には影響しません。mouseChildren は、子がマウス イベントを登録せず、親からディスパッチされることを意味します。完全に無効にするには、BOTH を false にする必要があります。


var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.mouseEnabled = false;
myButton.mouseChildren = false;

textfield はムービー クリップの子であるため、mouseChildren プロパティが影響を与えます。これを false に設定するだけで機能します。

于 2009-04-25T19:47:40.823 に答える