Форум 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=137914)

GStar 25.03.2010 15:59

Помогите со Скролом
 
У меня Есть Клип в котором текстовое поле. Вопрос. Как мне добавить скрол в текстовое поле ?

P.S. Ещё вопрос. У меня Есть файл vrem.fla В нём подключён Класс Main.as В Main.as Импортирован Data.as В Data.as Записано data_txt.htmlText=data; ( data - Это переменная которая была создана в Data.as )( data_txt - это текстовое поле в vrem.fla ) Ошибок это не выдаёт, но и на экран ничего не выводит. Что не так и как исправить ?

Добавлено через 1 час 14 минут
Добавил ещё вопрос. Помогите плизз

Bond007 25.03.2010 22:30

Можно, наверное проект прикрепить к сообщению, посмотрим.

manzhos 01.07.2010 20:15

Код AS3:

package
{
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.display.StageAlign;
        import flash.display.StageScaleMode;
        import flash.events.TextEvent;
        import flash.net.navigateToURL;
        import flash.net.URLLoader;
        import flash.net.URLLoaderDataFormat;
        import flash.net.URLRequest;
        import flash.text.TextField;
/* * * * * * * * * *
*                  *
*  @author wolsh  *
*                  *
\* * * * * * * * * */

        public class Main extends Sprite
        {
                private var _txt:TextField;
                private var _xml:XML;
 
                public function Main():void
                {
                        if (stage) init();
                        else addEventListener(Event.ADDED_TO_STAGE, init);
                }
 
                private function init(e:Event = null):void
                {
                        removeEventListener(Event.ADDED_TO_STAGE, init);
                        stage.align = StageAlign.TOP_LEFT;
            stage.scaleMode = StageScaleMode.NO_SCALE;
 
                        // Загружаем XML
                        var loader:URLLoader = new URLLoader();
                        loader.dataFormat = URLLoaderDataFormat.TEXT;
                        loader.addEventListener(Event.COMPLETE, onXMLLoaded);
                        loader.load(new URLRequest("books.xml"));
                }
                private function onXMLLoaded(event:Event):void
                {
                        // Получаем XML из загруженных данных
                        _xml = XML(event.target.data);
                        // получаем XMLList - список книг
                        var books:XMLList = _xml..book;
 
                        // Создаем текстовое поле для вывода
                        _txt = new TextField();
                        addChild(_txt);
                        _txt.multiline = true;
                        _txt.textColor = 0x000000;
                        _txt.x = 400, _txt.y = 50;
                        _txt.height = 300;
 
 
                        // Подписываемся на событие нажатия на ссылки
                        _txt.addEventListener(TextEvent.LINK, onLink);
                        // Формируем html-строку для вывода
                        var bookString:String = "";
                        for (var i:uint = 0; i < books.length(); i++)
                        {
                                var url:String = books[i].bookurl.text();
                                var name:String = books[i].bookname.text();
                                bookString += "<font face='Tahoma, Geneva, sans-serif' size='+2'><a href='event:" + url + "'>" + name + "</a></font><br>";
                        }
                        _txt.htmlText = bookString;
                }
                private function onLink(event:TextEvent):void
                {
                        // переходим на переданный адрес URL
                        navigateToURL(new URLRequest(event.text));
                }
        }
}

вот мой проект - та же проблема :)

leofit 01.07.2010 20:55

Либо берите готовый компонент скролл, либо юзайте готовый компонент TextArea(текстковое поле со скроллом) либо пишите свой кастомный, ничего сложного тут нет

Код AS3:

TextField.scrollV = TextField.maxScrollV;


manzhos 01.07.2010 21:09

в общем-то наверное кривизна еще та, но выкрутился - сделал два поля и назначил на них прокрутки:

Код AS3:

 
                        //Создаем поля для скроллинга
                        tUp = new TextField();
                        addChild(tUp);                       
                        tUp.x = 480, tUp.y = 45;
                        tUp.height = 20;
                        tUp.width = 11;
                        tUp.wordWrap = true;
                        tUp.background = true;
                        tUp.textColor = 0xFFFFFF;                       
                        tUp.backgroundColor = 0xf59505;
 
                        tDown = new TextField();
                        addChild(tDown);                       
                        tDown.x = 480, tDown.y = 355;
                        tDown.height = 20;
                        tDown.width = 11;
                        tDown.wordWrap = true;
                        tDown.background = true;
                        tDown.textColor = 0xFFFFFF;                       
                        tDown.backgroundColor = 0xf59505;
                        tDown.editable = false;
 
                        // Подписываемся на событие нажатия на поле
                        tUp.addEventListener(MouseEvent.MOUSE_UP, mouseUpScroll);
                        tDown.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownScroll);



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

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