Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 28.12.2009, 15:35
Seroy вне форума Посмотреть профиль Отправить личное сообщение для Seroy Найти все сообщения от Seroy
  № 1  
Ответить с цитированием
Seroy

Регистрация: Jun 2008
Адрес: пока еще здесь
Сообщений: 198
По умолчанию как получить данные из компонента DataGrid в каком-нибудь виде (массив, строка ...)

Суть в том, что я меняю значения в DataGrid (т.е.
Код AS1/AS2:
DataGrid.editable="true"
).

Как получить измененные значения? (измененные путем простого редактирования в клетках).

Старый 28.12.2009, 15:52
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 2  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
У датагрида есть событие onCellEdit, кажется. Надо подписаться на него.
Если ж все данные чохом, то dg.dataProvider - это массив объектов вида
{column1:данные,column2:данные,...}
Скажем получить данные ячейки(12,3) можно так (нумерация с нуля)
dg.dataProvider[12].column3;
Ну, само собой column1, column2 и пр. - это должны быть названия колонок вашей датагрид.

Старый 28.12.2009, 16:12
Seroy вне форума Посмотреть профиль Отправить личное сообщение для Seroy Найти все сообщения от Seroy
  № 3  
Ответить с цитированием
Seroy

Регистрация: Jun 2008
Адрес: пока еще здесь
Сообщений: 198
спасибо! попробую.

вот еще откопал - кажись, то самое:

http://help.adobe.com/en_US/AS2LCR/F...LangRef_1.html

Код AS1/AS2:
my_dg.setSize(320, 240);
my_dg.editable = true;
 
// Add columns and make the first one not editable.
my_dg.addColumn("name");
my_dg.getColumnAt(0).editable = false;
my_dg.addColumn("score");
 
var myDP_array:Array = new Array();
myDP_array.push({name:"Clark", score:3135});
myDP_array.push({name:"Bruce", score:403});
myDP_array.push({name:"Peter", score:25});
 
// Set data source of DataGrid.
my_dg.dataProvider = myDP_array;
 
// Create listener object.
var myListener_obj:Object = new Object();
myListener_obj.cellEdit = function(evt_obj:Object) {
 // Retrieve location of cell that was changed.
 var cell_obj:Object = "("+evt_obj.columnIndex+", "+evt_obj.itemIndex+")";
 // Retrieve cell value that was changed.
 var value_obj:Object = evt_obj.target.selectedItem.score;
 trace("The value of the cell at "+cell_obj+" has changed to "+value_obj);
};
 
// Add listener object.
my_dg.addEventListener("cellEdit", myListener_obj);
Добавлено через 1 час 28 минут
Цитата:
Сообщение от alexcon314 Посмотреть сообщение
У датагрида есть событие onCellEdit, кажется. Надо подписаться на него.
Если ж все данные чохом, то dg.dataProvider - это массив объектов вида
{column1:данные,column2:данные,...}
Скажем получить данные ячейки(12,3) можно так (нумерация с нуля)
dg.dataProvider[12].column3;
Ну, само собой column1, column2 и пр. - это должны быть названия колонок вашей датагрид.
alexcon314, извините, что вас пытаю: тут же возник вопрос насчет клеток. Можно ли сделать, чтобы при нажатии на каждую клетку в ней открывался список (по сути, ComboBox), фактически - список всех ранее введенных значений столбца (но - в виде ComboBox, чтобы не расползалось как сибирское половодье)? или это уже из области фантастики?

тут вроде дилемма получается: если выделяешь клетку, то в ней и нужно писать, а если сделать ее недоступной для выделения, то как выбрать нужную для передачи ей значения отдельно стоящего ComboBox?

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:56.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.