![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2005
Сообщений: 34
|
в общем как известно чтобы компоненте dataGrid столбцу присвоить какой нибудь стиль
какой_то_столбец_в_компоненте.cellRenderer = Сoloritems где coloritems у меня класс который делает текстформат для текста в столбце. собственно класс (уж не обессудьте что в нем что то очень коряво,я не волшебник - я всего лишь учусь ![]() package {
import fl.controls.listClasses.CellRenderer;
import flash.text.TextFormat;
import flash.text.TextFormatAlign;
/**
Класс работает с текстом в отдельно взятой ячейке
*/
public class Coloritems extends CellRenderer /*implements ICellRenderer*/ {
public static var _aFormats:Array = [new TextFormat("SF TransRobotics Bold",16,0x00FF00),
new TextFormat("SF TransRobotics Bold",16,0xC27005),
new TextFormat("SF TransRobotics Bold",16,0xFF9C00),
new TextFormat("SF TransRobotics Bold",16,0xFFBE36),
new TextFormat("SF TransRobotics Bold",16,0xFFFC12),
new TextFormat("SF TransRobotics Bold",16,0xBEBEBE)];
public function Coloritems() {
}
public function checkColor():void {
trace(this._parent);
if(_listData.index ==0){
textField.setTextFormat(_aFormats[0]);
} else if(_listData.index<10){
textField.setTextFormat(_aFormats[1]);
} else if (_listData.index <20) {
textField.setTextFormat(_aFormats[2]);
} else if (_listData.index<40) {
textField.setTextFormat(_aFormats[3]);
} else if( _listData.index<50) {
textField.setTextFormat(_aFormats[4]);
} else if (_listData.index<100) {
textField.setTextFormat(_aFormats[5]);
}
}
override protected function drawLayout():void {
checkColor();
super.drawLayout();
}
}
}
поискал по форумам наткнулся на ссылку http://www.adobe.com/devnet/flash/qu.../datagrid_pt3/ как видно в последнем примере там _listData.index это ссылка на строку в столбце для которого этот cellRenderer применен. мне же нужно обратиться из класса ColorItems непосредственно к столбцу (и мож быть в дальнейшем и к датагриду) к которому он применен. подскажите как это сделать или киньте ссылку - почитаю разберусь. это нужно для того чтобы не писать мне 10 классов на каждый cellRenderer для столбца а сделать метод ( а можно даже изменить checkColor() в данном классе чтобы она проверяла имя столбца и в зависимости от его имени вешала на текст в этом слобце определенный текстформат) заранее спасибо.
__________________
Автор благодарит алфавит за предоставленые буквы. |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 34
|
все разобрался.
вот этот объект _listData у него помимо свойства index есть свойство column а за объект к столбцу которого приклеен cellRenderer отвечает свойство owner. всем сорри за беспокойство и спасибо за внимание ![]()
__________________
Автор благодарит алфавит за предоставленые буквы. Последний раз редактировалось uncle_sam; 09.10.2007 в 19:23. |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|