ダイナミックテキストフィールドに非常に長いクラシックテキストがあり、UIScrollBarでスクロールできます。内部には多くの参照があり、一部はWeb内のサイトへの参照、一部は内部にテキストフィールドがあるムービークリップのさまざまなフレームで配布した他のテキストへの参照です。プロパティパネルのリンクフィールドとターゲットフィールドを使用して、テキスト内から外部Webサイトに問題なくリンクできます。gotoAndStopメソッドの関数を使用して、ボタンを使用して特定のフレームにリンクすることに問題はありません。しかし、テキスト内の選択した単語から特定のフレームに移動することはできません。実際、プロパティパネルのリンクフィールドとターゲットフィールドを使用して、コンピューター内のファイルに移動することさえできません。[テキストをhtmlとしてレンダリング]ボタンをクリックしても、Htmlタグはレンダリングされません。スクロールバーが原因でテキストを静的に変更できません。私は出来ます' また、スクロールすると単語がずれてしまうため、単語の後ろに非表示のボタンを使用します。varがどのように役立つかわかりません。これは、テキストフィールドに選択した単語のみが表示されるためです。私はファイルをターゲットにできず、httpだけをターゲットにしているので、アンカーも役に立たないようです。どんなアイデアでも大歓迎です。
1583 次
1 に答える
2
あなたが望むことは可能です。ただし、フラッシュテキストフィールドのバグのおかげで少し欠点があります。まず、テキストフィールドのテキストはhtmlテキストであり、選択可能である必要があります。次に、ここを見てください: テキストフィールドリンクイベント
public function TextField_event_link() {
myMP3 = new Sound();
var text:TextField = new TextField();
text.autoSize = TextFieldAutoSize.LEFT;
text.multiline = true;
text.htmlText = "Hello this is my little site. Click <a href=\"event:imprint\">here</a>for the imprint. And <a href=\"event:imprint\">here</a> for the about page. And if you're coming so far, also <a href=\"event:imprint\">here</a> for the exit";
list.addEventListener(TextEvent.LINK, linkHandler);
addChild(list);
}
private function linkHandler(linkEvent:TextEvent):void {
switch(linkEvent.text)
{
case "imprint":
//display imprint
break;
case "about":
//display about
break;
case "exit":
//exit
break;
}
}
ハンドラーでイベント名を比較して、魔法をかけることができます。テキストを選択できない場合、これは機能しません。アドビが最新のプレーヤーでその問題を修正したが、これは何年もの間私を悩ませていたのなら、ドノ!
于 2012-05-12T18:52:53.773 に答える