gloomyBrain, ни разу не был на demiart.ru...
я имел ввиду это (если в кратце):
Код AS1/AS2:
// создаём поле
var txt = this.createTextField('txt', 1, 100, 100, 250, 1);
// заполняем текстом
for(var i = 1; i <= 25; i++) txt.text += 'Строка №' + i + newline;
txt.wordWrap = true;
txt.autoSize = true;
// получаем высоту в пикселях и в строках
var max_height = txt._height;
var max_rows = txt.maxscroll;
// задаём нужную высоту поля, считаем строк влезающих на страницу
// и общее кол-во страниц
txt.autoSize = false;
txt.border = true;
txt.selectable = false;
txt._height = 100;
var page_rows = Math.floor(txt._height * max_rows / max_height);
var total_pages = Math.ceil(max_rows / page_rows);
// создаём кнопки на скорую руку
var btns = new Array();
for(var i = 0; i< total_pages; i++){
var btn = this.createTextField('btn' + i, i+10, txt._x + txt._width, txt._y + i*18, 15, 18);
btn.border = true;
btn.html = true;
btn.htmlText = '<a href="asfunction:flip,' + i + '">' + (i+1) + '</a>';
btns.push(btn);
}
// обрабатываем выбор страницы
var current_page;
function flip(to_page){
var btn = btns[to_page];
btn.textColor = 0xFF0000;
current_page.textColor = 0x000000;
current_page = btn;
txt.scroll = to_page * page_rows;
}
// стартуем с первой страницы
flip(0);