Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Flash > Подстраивание высоты строки DataGrid под текст


Автор: Eva_Adamova 12.5.2008, 08:22
Всем привет!
Есть датагрид, в который загружается текст из XML.  В .as файле лежит class MultiLineCell, с помощью которого я сделала перенос текста в ячейках грида по строкам.
Но вот как теперь изменить высоту строки в зависимости от текста, так, чтобы если не влазит полностью, то строчка автоматом увеличивалась, как в том же Экселе?
В .as файле лежит класса MultiLineCell:
Код

    // Provides the preferred height of the cell. Inherited method.
    public function getPreferredHeight():Number
    {
/* The cell is given a property, "owner", that references the row. 
It's always preferred that the cell take up most of the row's height. 
In this case we will keep the cell slightly smaller.*/
        return owner.__height - PREFERRED_HEIGHT_OFFSET;
    }

 (взято из справки)
Тут функция возвращает высоту текстового блока, меньшую высоты строки Datagrid на величину PREFERRED_HEIGHT_OFFSET (заданную заранее). Соответственно, где-то здесь  нужно рассчитать количество строк в ячейке и увеличить высоту всей строки Датагрида.
Как я поняла, просто так Датагрид не позволяет оперировать с конкретной строкой, максимум можно задать высоту всех строк, но мне необходимо именно для каждой, так чтобы текст влазил где нужно. Куда мне копать? Я понимаю, что в направлении CellRenderer, но не могу понять, где именно.


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)