Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Подсветка текста под мышкой (http://www.flasher.ru/forum/showthread.php?t=176500)

iceiceice 12.03.2012 13:36

Подсветка текста под мышкой
 
Подскажите, пожалуйста, как реализовать следующую вещь, есть TLF текст, в нем расставлены ссылки (в свойствах в графе Link написано event:имя_события). В итоговом ролике эти ссылки просто подчеркнуты , как мне сделать подсветку ссылок при наведении на них мышкой?
Пробовал через setTextFormat но не знаю как поймать начало и конец ссылки относительно всего текста, начальный текст никак не изменить ,тэги не расставить. Это вообще реально сделать средствами флэша?

Wolsh 12.03.2012 14:20

1) LinkElement же генерит события rollOut и rollOver. Ну и меняйте при их наступлении стиль элемента с помощью setStyle.
2) Другой способ - форматирование. Есть же теги linkHoverFormat, linkNormalFormat, linkActiveFormat.

iceiceice 13.03.2012 13:50

Спасибо linkHoverFormat это то что мне нужно, только у меня возникла следующая проблема, как отформатировать уже существующий текст, то есть у меня на форме есть TLFText(MainText) в нем содержатся ссылки и текст, код следующий
Код AS1/AS2:

var myFormat:TextLayoutFormat = new TextLayoutFormat();
        myFormat.color = 1111;
        myFormat.fontFamily = "Arial, Helvetica, _sans";
 
        var myTextFlow:TextFlow = MainText.textFlow;
 
        myTextFlow.linkHoverFormat = {color:7777};
        myTextFlow.hostFormat = myFormat;
        myTextFlow.addChild(p);
        myTextFlow.flowComposer.addController(new ContainerController(this,stage.stageWidth, stage.stageHeight));
    myTextFlow.flowComposer.updateAllControllers();

Получается что форматирование изменилось но применяется только в дальнейшем myTextFlow.addChild(p) где p это ParagraphElement уже отформатировван как надо, а все что было в MainTaxt осталось без изменения, вопрос как отформатировать текст который был изначально.

2)У TextLayoutFormat есть свойтво linkActiveFormat но при обращении к нему вылетает ошибка в чем здесь тонкость?


Часовой пояс GMT +4, время: 13:33.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.