![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2010
Сообщений: 177
|
Здравствуйте! Подскажите, пожалуйста!
Есть экземпляр компонента DataGrid: <mx:DataGrid id="dg" width="100%" height="100%" variableRowHeight="true" wordWrap="true"> <mx:columns> <mx:DataGridColumn dataField="par1" itemRenderer="myItemRenderer"/> </mx:columns> </mx:DataGrid> Как сделать так, чтобы высота строки DataGrid подстраивалась под высоту элемента Text (id="ta"), тобишь, чтобы весь текст компонента Text был виден в ячейке? Последний раз редактировалось zorexundra; 13.02.2012 в 14:58. |
|
|||||
|
Регистрация: Dec 2011
Сообщений: 9
|
Не пойму зачем Text обернут в Module, хотя бы уж VBox.
Если html не сильно нужен, то вполне можно оставить без рендерера. Строки будут разной высоты, весь текст виден. Если нужен html, то лучше использовать примерно такой рендерер: |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 177
|
droopy, спасибо! Но вопрос остаётся открытым.
Я привёл здесь упрощённый пример. Реально itemRenderer-ом может выступать любой компонент и необходимо, что бы высота ячейки подстраивалась под варьируемую высоту itemRenderer. Последний раз редактировалось zorexundra; 15.02.2012 в 13:14. |
|
|||||
|
Регистрация: Dec 2011
Сообщений: 9
|
DataGrid выставляет для строки такой размер, какой запросит рендерер при вызове measure() - свойства measuredMinHeight и measuredHeight. Попробуйте вот такой рендерер - все высоты выставляет по-разному.
<?xml version="1.0" encoding="utf-8"?> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script> <![CDATA[ override protected function measure():void { super.measure(); var normalHeight:Number = this.measuredHeight; this.measuredMinHeight = this.measuredHeight = normalHeight * Math.random() * 2; } ]]> </mx:Script> <mx:Label text="aaa"/> <mx:Button label="bbb"/> </mx:VBox> |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:34. |
|
|
« Предыдущая тема | Следующая тема » |
|
|