아둥스토리

[MFC/C++] OLE를 이용한 Drag and Drop 본문

프로그래밍/C++

[MFC/C++] OLE를 이용한 Drag and Drop

아둥이 2016. 12. 30. 14:15

[ MFC - OLE Drag&Drop ]

 

* 서로 다른 Dialog 및 View 간의 데이터 이동에 사용할 수 있다.

 

* 먼저 간단하게 설명하자면,

 1. OLE를 초기화한다.

 2. 이동하고자 하는 데이터를 CSharedFile을 이용해 COleDataSource에 담는다.

 3. COleDropTarget으로 Drop 타겟을 설정한다.

 4. 타겟지점에서 CMemFile 및 COleDataObject를 이용해 담았던 데이터를 추출한다.

 

 

내 경우는 CTreeCtrl에서 String Data를 이동시켰다.

 

 

1. 우선, OLE를 초기화한다.

 

[MyApp.cpp]



 

2. 이동하고자 하는 데이터를 CSharedFile을 이용해 COleDataSource에 담는다.

 

[MyDlg.cpp]


 

3. COleDropTarget으로 Drop 타겟을 설정한다.

 

타겟 Dialog or View에 COleDropTarget를 선언한다.

 

[MyView.h]



 

[MyView.cpp]


 

 4. 타겟지점에서 CMemFile 및 COleDataObject를 이용해 담았던 데이터를 추출한다.


 

이렇게 작성해주면 MyDlg의 TreeCtrl에서 MyView로 Drag and Drop 이 완성!

 

잘 못 작성된 부분이 있으면 알려주세요... 함께 공부해요...... :D

'프로그래밍 > C++' 카테고리의 다른 글

[MFC/C++] Edit Control 여러 줄 사용, 자동 줄 바꿈  (0) 2017.11.05
Comments