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
-~----------~----~----~----~------~----~------~--~---