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

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

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

Регистрация: Sep 2008
Сообщений: 6
Arrow drag & drop кнопок

Хочу сделать что бы можно было менять местами кнопки (button) в контроле Tile, так как в нем если кнопки не помещаются на одну строку,
то перемещаются на новую строку.
Начальную стадию сделал, а завершить пока не получается, т.е не могу зафиксировать окончательную позицию кнопок.

Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" xmlns:adobe="http://www.adobe.com/2006/fc">
        <mx:Script>
        <![CDATA[
        	import mx.controls.List;
		import mx.containers.Box;
		import mx.controls.Alert;
		import mx.managers.DragManager;
   	        import mx.core.DragSource;
    	        import mx.controls.Button;
                import mx.events.DragEvent;
                import flash.events.*;

	    	private function dragIt(event:MouseEvent, value:uint):void {
		        var dragInitiator:Button = event.currentTarget as Button;
	    	        var dragSource:DragSource = new DragSource();
                        dragSource.addData(value, 'value');
                        DragManager.doDrag(dragInitiator, dragSource, event);
                }

	    	private function doDragEnter(event:DragEvent):void {
                    var dropTarget:Button = event.currentTarget as Button;
                    //Alert.show("Drag&");
                    if (event.dragSource.hasFormat('value')) 
                    {
                        DragManager.acceptDragDrop(dropTarget);
                    }
                }

            private function doDragDrop(event:DragEvent):void {
            	var dropTarget:Button = Button(event.currentTarget);
            	tiDrop.text += "dragDrop triggered" + "\n";

            	// Получаем перетаскиваемые данные.
		var items:Object = event.dragSource.dataForFormat("value");
            	tiDrop.text += items + "\n";
            	
            	// Получаем позицию вставки объекта в целевой компонент.
	        var dropLoc:String = dropTarget.id;
		tiDrop.text += dropLoc + "\n";
            }
            
            private function doDragOver(event:DragEvent):void {
                DragManager.showFeedback(DragManager.LINK);
            }
        ]]>
        </mx:Script>
        
<mx:Panel width="100%" height="350">
<mx:Tile id="dragdrop" width="400">
	<mx:Button id="btn1" label="Tab 1" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 1)" />
	<mx:Button id="btn2" label="Tab 2" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 2)" />
	<mx:Button id="btn3" label="Tab 3" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 3)" />
	<mx:Button id="btn4" label="Tab 4" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 4)" />
	<mx:Button id="btn5" label="Tab 5" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 5)" />
	<mx:Button id="btn6" label="Tab 6" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 6)" />
	<mx:Button id="btn7" label="Tab 7" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 7)" />
	<mx:Button id="btn8" label="Tab 8" dragEnter="doDragEnter(event);" dragDrop="doDragDrop(event);" dragOver="doDragOver(event)" mouseDown="dragIt(event, 8)" />
</mx:Tile>
<mx:TextArea id="tiDrop" height="300" width="300" />
</mx:Panel>
</mx:Application>

Отловить смог какие кнопки меняю местами, в отладочной TextArea это видно, а как их зафиксировать, подскажите пожалуйста.

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

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

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


 


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


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