Datagrid нужна помощь в реализации
нужна таблица состоящая из колонок
Работа , цена, норма, сумма, исполнитель, удалить строку, добавить строку. поле работа, норма, заполняются руками. поле цена я беру ее из базы. поле исполнитель должен быть селектором из 10 имен поле сумма это умножение нормы на цену кнопка удалить удаляет данную строку кнопка добавить добавляет еще одну строчку в datagrid внизу под таблицей есть кнопка отправить где вся таблица должна уйти одним массивом. что есть :
raboti.columns = ["id","Работы","Цена","Норма","Сумма","Исполнитель" ,"удалить" ]
btnadd.addEventListener(MouseEvent.CLICK, addstroka);
function addstroka(event:Event):void
{
raboti.editable = true;
var i = raboti.length;
var kkk =st.text;
i++;
var nor = 0;
var myObject:Object = new Object();
myObject.id = i;
myObject.Цена = st.text;
myObject.Норма = "";
myObject.Сумма = "";
myObject.Исполнитель = "";
raboti.addItem(myObject);
}
|
Вот еще работает .... но при редактирование столбцов выдает ошибку
ReferenceError: Error #1069: Property selectedItem not found on fl.controls.dataGridClasses.DataGridCellEditor and there is no default value. at baza_fla::MainTimeline/gridItemClick()[baza_fla.MainTimeline::frame4:85] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at fl.controls::TextInput/handleChange()
raboti.columns = ["id","Работы","Цена","Норма","Сумма","Исполнитель" ,"удалить" ]
btnadd.addEventListener(MouseEvent.CLICK, addstroka);
function addstroka(event:Event):void
{
raboti.editable = true;
var i = raboti.length;
var kkk =st.text;
i++;
var myObject:Object = new Object();
myObject.id = i;
myObject.Цена = st.text;
myObject.Норма = "";
myObject.Сумма = "";
myObject.Исполнитель = "";
raboti.addItem(myObject);
}
raboti.addEventListener(Event.CHANGE, gridItemClick);
function gridItemClick (event:Event):void {
var cena =event.target.selectedItem.Цена;
var norma =event.target.selectedItem.Норма;
var summ = cena * norma;
trace (cena);
trace (norma);
trace (summ);
//var rur = event.target.selectedItem.Сумма = summ;
}
|
Сделал :)
function gridItemClick (event:Event):void {
var rur = event.target.selectedItem.сумма =event.target.selectedItem.цена * event.target.selectedItem.норма;
}
|
| Часовой пояс GMT +3, время: 11:40. |