XPLATFORM 101

- Grid > Copy & Move


좀 아쉬운 기능이긴 합니다.

예제는 그리드에 있는 데이터를 드래그해서 텍스트 영역에 붙여넣는 예제입니다.

소스도 어렵지 않은데 문제는 그리드에서의 드래그 이벤트를 텍스트에서 받을 수 없다는 겁니다.

function Grid00_ondrag(obj:Grid, e:GridDragEventInfo)

{

var col_id = obj.getCellProperty("body", e.cell, "text");

col_id = col_id.slice(5);

drag_data = ds_bind.getColumn(e.row, col_id);

return true;

}

drag_data 라는 변수에 전달될 데이터를 넣기 위한 부분입니다.

물론 그리드에서 이벤트가 전달되는 경우에는 하나의 셀만 지정하는 경우도 있지만 그렇지 않은 경우도 있기 때문에

실제 드롭된 곳에서 sourceobject 로 선택된 셀에 대한 정보를 참고할 수 있습니다.




이번 경우에는 그리드의 속성으로 넘어오겠죠.


하지만 Edit 컴포넌트에서 Edit 컴포넌트로 넘기는 경우에는 아주 간단해집니다.

기본적으로 Edit 컴포넌트에서 드래그하기 위해 선택된 값은 이벤트의 dragdata 라는 속성으로 담기게 됩니다.

그래서 그냥 아래와 같이 처리해주면 끝납니다.

function Edit01_ondrop(obj:Edit, e:DragEventInfo)

{

Edit01.value = e.dragdata;

}

그리드에서 값을 다루는 부분은 이후에 좀 더 자세하게 다루도록 하겠습니다.

http://cafe.naver.com/xplatform101/172