Javascript-форум (https://javascript.ru/forum/)
-   Flash (https://javascript.ru/forum/flash-actionscript-program/)
-   -   Datagrid нужна помощь в реализации (https://javascript.ru/forum/flash-actionscript-program/37081-datagrid-nuzhna-pomoshh-v-realizacii.html)

arahmanov 07.04.2013 11:55

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);


}

arahmanov 07.04.2013 19:57

Вот еще работает .... но при редактирование столбцов выдает ошибку


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;
	
}

arahmanov 08.04.2013 17:12

Сделал :)

function gridItemClick (event:Event):void {
var rur = event.target.selectedItem.сумма =event.target.selectedItem.цена * event.target.selectedItem.норма;
}


Часовой пояс GMT +3, время: 05:38.