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

Fartoviy_Spec 10.05.2012 18:51

Одновременная прокрутка двух текстовых полей
 
Не получается прокрутить два поля сразу, подскажите пожалуйста как это сделать?
Код AS3:

        var txtField:TextField = new TextField();
        txtField.width = 370;
        txtField.height = 800;
        txtField.multiline = true;
 
        var txtField2:TextField = new TextField();
        txtField2.width = 615;
        txtField2.height = 800;
        txtField2.multiline = true;
        txtField2.x = 370;
 
        var vScrollBar:UIScrollBar = new UIScrollBar();
        vScrollBar.direction = ScrollBarDirection.VERTICAL;
        vScrollBar.move(txtField2.x + txtField2.width, txtField2.y);
        vScrollBar.height = 800;
 
        vScrollBar.scrollTarget = txtField;
        vScrollBar.scrollTarget = txtField2;
        addChild(vScrollBar);


illuzor 10.05.2012 19:03

Положите оба текстфилда в общий контейнер.

Fartoviy_Spec 10.05.2012 19:10

а какого типа контейнер? спрайт?

illuzor 10.05.2012 19:15

scrollTarget : DisplayObject, по идее и спрайт подойдёт.
Хотя в хелпе в примерах одни текстовые поля...

Fartoviy_Spec 10.05.2012 19:25

так что то ошибку выдает, ReferenceError: Error #1069: Не удалось найти свойство maxScrollV в flash.display.Sprite; отсутствует значение по умолчанию.
Или как в этот контейнер поместить их?
Код AS3:

var cont:Sprite = new Sprite();
        addChild(cont);
        cont.x = 75;
 
        var txtField:TextField = new TextField();
        txtField.width = 370;
        txtField.height = 800;
        txtField.multiline = true;
 
        var txtField2:TextField = new TextField();
        txtField2.width = 615;
        txtField2.height = 800;
        txtField2.multiline = true;
        txtField2.x = 370;
 
        cont.addChild(txtField);
        cont.addChild(txtField2);
 
        var vScrollBar:UIScrollBar = new UIScrollBar();
        vScrollBar.direction = ScrollBarDirection.VERTICAL;
        vScrollBar.move(txtField2.x + txtField2.width, txtField2.y);
        vScrollBar.height = 800;
 
        vScrollBar.scrollTarget = cont;
        addChild(vScrollBar);


illuzor 10.05.2012 19:29

Похоже, что никак. Нужно писать свой скроллбар

КорДум 10.05.2012 19:33

Ну почему никак... Можно же каждый кадр смотреть текущий скролл у одного текстового поля и ставить такой же у второго.

Fartoviy_Spec 10.05.2012 20:23

а как узнать текущий скролл?

Wolsh 10.05.2012 20:25

Цитата:

Можно же каждый кадр смотреть текущий скролл
А событие Event.SCROLL точно не отправляется текстфилдом при прокрутке скроллбаром?

Добавлено через 2 минуты
Цитата:

а как узнать текущий скролл?
scrollV

illuzor 10.05.2012 20:29

Цитата:

Сообщение от КорДум (Сообщение 1078954)
Ну почему никак... Можно же каждый кадр смотреть текущий скролл у одного текстового поля и ставить такой же у второго.

Я подумал, что надо оба текстфилда, как один прокручивать...


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

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