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

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 23.02.2010, 16:17
Sheff_88 вне форума Посмотреть профиль Отправить личное сообщение для Sheff_88 Найти все сообщения от Sheff_88
  № 4  
Ответить с цитированием
Sheff_88

Регистрация: Dec 2008
Сообщений: 20
Во-первых, заполнение dragSource
Код AS1/AS2:
private function onMouseMove(event:MouseEvent):void
{
                       var dragInitiator:Image = new Image();
        		      dragInitiator.source = 'assets/ico1.png';
 
                      var datasource:DragSource = new DragSource(); 
        		     datasource.addData( tileListChildData, "items");
 
        		var canvasProxy:Canvas = new Canvas(); 
        		     canvasProxy.height = 25; 
        		     canvasProxy.width = 25;
 
        		DragManager.doDrag(dragInitiator, datasource, event, canvasProxy); 
			}
Но это вообще необязаттельно, так как TileList поддерживает drag нативно. Для этого задайте свойство dragEnabled="true" для TileList.

canvas'у, естественно, dragDrop нативно не прописан.
Добавляем хэндлер на дроп
Код AS1/AS2:
private function dragEnterHandler(event:DragEvent):void
			{
				trace("dragEnterHandler: "+event.target);
				if (event.dragSource.hasFormat("items"))
				{ 
					DragManager.acceptDragDrop(Canvas(event.currentTarget)); 
				} 
 
private function dragDropHandler(event:DragEvent):void
            {
	     trace("dragDropHandler");
 
                //получаем массив дропнутых данных
                var droppedData:Array = event.dragSource.dataForFormat('items') as Array;
 
                //обрабатываем данные
                var item:Object;
                for each( object in droppedData )
                {
                    totalValue.push(object.value);
                    totalName.push(object.name);
                }
            }
Как-то так

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

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

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


 


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


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