Hi Karthik,

Where did u put the following function

public function DropTargetRenderer()
               {
                       super();

this.addEventListener(DragEvent.DRAG_ENTER,dragEnterHandler);

this.addEventListener(DragEvent.DRAG_EXIT,dragExitHandler);

this.addEventListener(DragEvent.DRAG_DROP,dragDropHandler);
               }


make sure u call this function in the constructor of the class you are
using it.

HTH,

-Ravi



On May 28, 4:14 pm, Karthik K <[email protected]> wrote:
> hi Ravi
>
> i have one doubt
>
> i am already having one itemrenderer when i place the class data of
> DropTargetRenderer inside my renderer it is having some problem
>
> below is the class i am using
>
> for all datagrid columns only one itemrenderer
>
> First i need to display data and after that drag and drop should work
>
> below will display data
>
> public class sampleItemRenderer extends Canvas  implements
> IDropInListItemRenderer
> {
>     private var _listData:DataGridListData;
>     private var textData:Text=new Text();
>     private var str : String ="";
>     private var arr : Array ;
>     private var canvas:Canvas=new Canvas();
>     private var canvas1:Canvas=new Canvas();
>     public function sampleItemRenderer()
>     {
>         super();
>     }
>      public function get listData():BaseListData
>     {
>         return _listData;
>     }
>      public function set listData(value:BaseListData):void
>     {
>         _listData = DataGridListData(value);
>     }
>     override public function set data(value:Object):void
>     {
>          this.removeAllChildren()
>         super.data=value;
>         textData.text=String(data[_listData.dataField]);
>         textData.height=50;
>         textData.width=160
>         arr  = textData.text.split(",");
>         var box:VBox=new VBox();
>         for(var i:int=0;i<arr.length;i++)
>         {
>             var text:Text = new Text();
>             text.text = arr[i].toString();
>              box.addChild(text);
>                this.addChild(box);
>            }
>     }
>
> }
>
> when i place your data drag and drop not happening
>
>  public function DropTargetRenderer()
>                {
>                        super();
>
> this.addEventListener(DragEvent.DRAG_ENTER,dragEnterHandler);
>
> this.addEventListener(DragEvent.DRAG_EXIT,dragExitHandler);
>
> this.addEventListener(DragEvent.DRAG_DROP,dragDropHandler);
>                }
>                public function dragEnterHandler(e:DragEvent):void{
>                        var dropTarget:Text = e.currentTarget as Text;
>
> if(e.dragSource.hasFormat('value')){
>                                DragManager.acceptDragDrop(dropTarget);
>                        }
>                }
>                public function
> dragExitHandler(e:DragEvent):void{
>                        var dropTarget:DataGridListData = e.currentTarget as
> DataGridListData;
>                }
>
>                public function
> dragDropHandler(e:DragEvent):void{
>                        var value:String =
> e.dragSource.dataForFormat('value') as String;
>                        (e.currentTarget as Text).text += value
> ;
>                }
>
> it is not displaying
>
> any idea
>
> please help
>
> --
> Karthik.k
> Mobile - +91-9894991640http://kkarthikresume.blogspot.com/
>
> On Wed, May 27, 2009 at 6:45 PM, Karthik K <[email protected]> wrote:
> > hi Ravi
>
> > I did that myself but sorry for not responding you
>
> > Thanks Ravi
>
> > --
> > Karthik.k
> > Mobile - +91-9894991640
> >http://kkarthikresume.blogspot.com/
>
> > On Wed, May 27, 2009 at 6:43 PM, Ravi Mishra <[email protected]>wrote:
>
> >> Yes u can do that also. At the time of drop, add "/n" into the string.
> >> i. e.
>
> >> private function dragDropHandler(e:DragEvent):void{
> >>                        var value:String = e.dragSource.dataForFormat
> >> ('value') as String;
>
> >>                         (e.currentTarget as Text).text + "/n" +=
> >> value;
> >>                }
>
> >> Try that out. I think it will help
>
> >> -Ravi
>
> >> On May 27, 3:48 pm, Karthik K <[email protected]> wrote:
> >> > hi Ravi
>
> >> > Thanks a lot
>
> >> > Great Example
>
> >> > i have one doubt
>
> >> > can i  place the dropped data next line i.e inside same cell because my
> >> req
> >> > is of that type
> >> > i am creating calender application so that each event e.g between 8:00
> >> to
> >> > 9:00 there will be three events one below the other
> >> > so when i drag and drop if it is coming in next line will be very great
>
> >> > --
> >> > Karthik.k
> >> > Mobile - +91-9894991640http://kkarthikresume.blogspot.com/
>
> >> > On Wed, May 27, 2009 at 1:32 PM, Ravi Mishra <[email protected]>
> >> wrote:
>
> >> > > hi karthik,
>
> >> > > try this
>
> >> > > <!--Main.mxml file-->
> >> > > <?xml version="1.0" encoding="utf-8"?>
> >> > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> >> > > layout="vertical">
> >> > > <mx:ArrayCollection id="ac">
> >> > >    <mx:Object ename="aaa" eno="111" sal="2000"/>
> >> > >    <mx:Object ename="bbb" eno="222" sal="9000"/>
> >> > >    <mx:Object ename="ccc" eno="333" sal="43000"/>
> >> > >    <mx:Object ename="ddd" eno="444" sal="8000"/>
> >> > >    <mx:Object ename="eee" eno="555" sal="5000"/>
> >> > > </mx:ArrayCollection>
>
> >> > >        <mx:TextInput id="ti" text="Text Comes Here"/>
> >> > >        <mx:DataGrid id="dg" dataProvider="{ac}">
> >> > >                <mx:columns>
> >> > >                        <mx:DataGridColumn dataField="ename"
> >> > > itemRenderer="com.CustomRenderer" editorDataField="text"/>
> >> > >                        <mx:DataGridColumn dataField="eno"
> >> > > itemRenderer="com.DropTargetRenderer" editorDataField="text"/>
> >> > >                        <mx:DataGridColumn dataField="sal"
> >> > > itemRenderer="com.DropTargetRenderer" editorDataField="text"/>
> >> > >                </mx:columns>
> >> > >        </mx:DataGrid>
> >> > > </mx:Application>
>
> >> > > //CustomRenderer file
> >> > > package com
> >> > > {
> >> > >        import flash.events.MouseEvent;
>
> >> > >        import mx.controls.Image;
> >> > >        import mx.controls.Text;
> >> > >        import mx.controls.dataGridClasses.DataGridListData;
> >> > >        import mx.core.DragSource;
> >> > >        import mx.managers.DragManager;
>
> >> > >        public class CustomRenderer extends Text
> >> > >        {
> >> > >                public function CustomRenderer()
> >> > >                {
> >> > >                        super();
> >> > >                        this.setStyle("fontWeight","bold");
> >> > >                        this.setStyle("textAlign","left");
>
> >> > >  this.addEventListener(MouseEvent.MOUSE_MOVE,handleDrag);
> >> > >                }
>
> >> > >                override public function set data(value:Object):void{
> >> > >                        super.data = value;
> >> > >                        this.text = this.data[(listData as
> >> > > DataGridListData).dataField];
>
> >> > >  //this.addEventListener(MouseEvent.CLICK,clickHandler);
> >> > >                }
> >> > >                /* private function clickHandler(e:MouseEvent):void{
>
> >> > >                }
> >> > >                 */
>
> >> > >                private function handleDrag(e:MouseEvent):void{
> >> > >                        var obj:String = this.text;
> >> > >                        var dragInitiator:Text = e.currentTarget as
> >> Text;
> >> > >                        var dragSource:DragSource = new DragSource();
> >> > >                        dragSource.addData(obj,'value');
> >> > >                        var dragProxy:Image = new Image();
> >> > >                        dragProxy.source = "admin2.gif";
>
> >> > >  DragManager.doDrag(dragInitiator,dragSource,e,dragProxy);
> >> > >                }
> >> > >        }
> >> > > }
>
> >> > > //DropTargetRenderer.as file
> >> > > package com
> >> > > {
> >> > >        import mx.controls.Text;
> >> > >        import mx.events.DragEvent;
> >> > >        import mx.managers.DragManager;
>
> >> > >        public class DropTargetRenderer extends Text
> >> > >        {
> >> > >                public function DropTargetRenderer()
> >> > >                {
> >> > >                        super();
>
> >> > >  this.addEventListener(DragEvent.DRAG_ENTER,dragEnterHandler);
>
> >> > >  this.addEventListener(DragEvent.DRAG_EXIT,dragExitHandler);
>
> >> > >  this.addEventListener(DragEvent.DRAG_DROP,dragDropHandler);
> >> > >                }
>
> >> > >                private function dragEnterHandler(e:DragEvent):void{
> >> > >                        var dropTarget:Text = e.currentTarget as Text;
>
> >> > >                        if(e.dragSource.hasFormat('value')){
> >> > >                                DragManager.acceptDragDrop(dropTarget);
> >> > >                        }
> >> > >                }
>
> >> > >                private function dragExitHandler(e:DragEvent):void{
> >> > >                        var dropTarget:Text = e.currentTarget as Text;
> >> > >                }
>
> >> > >                private function dragDropHandler(e:DragEvent):void{
> >> > >                        var value:String =
> >> > > e.dragSource.dataForFormat('value') as String;
>
> >> > >                        (e.currentTarget as Text).text += value;
> >> > >                }
> >> > >        }
> >> > > }
>
> >> > > Put all the above mentioned files in the relevant packages and run.
> >> > > Try to drag a value from first column and drop it to either 2nd or 3rd
> >> > > column.
>
> >> > > HTH,
>
> >> > > -Ravi
>
> >> > > On May 27, 11:44 am, Karthik K <[email protected]> wrote:
> >> > > > hi Ravi
>
> >> > > > when i drag to the cell(where one data already exist) it is not
> >> standing
> >> > > in
> >> > > > the exact cell
> >> > > > it is moving to cell above or below
>
> >> > > > if there is any example
> >> > > > please help me
>
> >> > > > very critical
>
> >> > > > --
> >> > > > Karthik.k
> >> > > > Mobile - +91-9894991640http://kkarthikresume.blogspot.com/
>
> >> > > > On Wed, May 27, 2009 at 12:09 PM, Ravi Mishra <
> >> [email protected]
> >> > > >wrote:
>
> >> > > > > Yes u can! Just concatenate the dropped data to the previously
> >> dropped
> >> > > > > data.
>
> >> > > > > -Ravi
>
> >> > > > > On May 27, 11:34 am, Karthik K <[email protected]> wrote:
> >> > > > > > hi guys
>
> >> > > > > > i have one doubt
>
> >> > > > > > can i drag and drop data in same cell twice means
> >> > > > > > i am dragging data to
>
> ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Flex 
India Community" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/flex_india?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to