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

exsites 05.11.2015 08:25

автоскрол
 
Делаю чат на флеше. Все хорошо, дошло дело до скрола.... Сообщения пишутся в низ, а даже если стрелками промотать текст вниз, при фокусе в окно ввода текста скрол улетает на самый верх.. Наверное есть что-то что им управляет раз он появляется автоматически... Подскажите что?
Спасибо! А то второй час ничего вменяемого не могу найти.

Добавлено через 2 минуты
да, у меня Adobe Flash CS6. окно для чата взял из списка компонентов. Скрол появляется когда текста в чате становится больше окна автоматом.. я ничего не делал для этого.. Чат на AS3 + Socket.

Добавлено через 1 час 10 минут
нашел пример у адоба...

Код AS1/AS2:

        var myTextBox:TextField = new TextField();
        var myText:String = "Hello world and welcome to the show. It's really nice to meet you. Take your coat off and stay awhile. OK, show is over. Hope you had fun. You can go home now. Don't forget to tip your waiter. There are mints in the bowl by the door. Thank you. Please come again.";
 
        function TextScrollExample()
        {
            messagesArea.text = myText;
            messagesArea.width = 320;
            messagesArea.height = 50;
            messagesArea.multiline = true;
            messagesArea.wordWrap = true;
            messagesArea.background = true;
            messagesArea.border = true;
 
            var format:TextFormat = new TextFormat();
            format.font = "Verdana";
            format.color = 0xFF0000;
            format.size = 50;
 
            messagesArea.defaultTextFormat = format;
            addChild(messagesArea);
            messagesArea.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownScroll);
        }
 
        function mouseDownScroll(event:MouseEvent):void
        {
            messagesArea.scrollV++;
        }

так он не работает как и множество других. Справку перевели а половина примеров не работает.. Или я что-то не так делаю...

Так вот, ругается на: ReferenceError: Error #1056: Не удается создать свойство multiline в fl.controls.TextArea.

куда копать?

udaaff 05.11.2015 12:17

В примере обычный текстфилд (flash.text.TextField) использован, а у вас компонент.

exsites 05.11.2015 14:23

Ну я это в качестве примера привел что не работает.

А как сделать скролинг у компонента?

Xaider 07.11.2015 00:23

если текст в TextField, то
messagesArea.scrollV = messagesArea.numLines;

если используется компонент TextArea, то
textarea.verticalScrollBar.scrollPosition = textarea.verticalScrollBar.maxScrollPosition;

GBee 07.11.2015 01:42

Обычно свежие сообщения кидают вверх. Тогда и на скроллинг можно забить.

exsites 12.11.2015 14:20

Цитата:

Сообщение от Xaider (Сообщение 1188751)
textarea.verticalScrollBar.scrollPosition = textarea.verticalScrollBar.maxScrollPosition;

Спасибо. Именно то о чем и думал что должно быть.


Цитата:

Сообщение от GBee (Сообщение 1188756)
Обычно свежие сообщения кидают вверх. Тогда и на скроллинг можно забить.

вот момент кидалки: messagesArea.appendText (sendTxt+'\n');
что тут необходимо указать что бы они верх сыпались?

GBee 12.11.2015 14:22

Код AS3:

txt = newText + '\n' + txt;
messagesArea.text = txt;



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

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