C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[17223] [질문] VCL에서 VCL로 Drag & Drop
Falco [falco] 926 읽음    2002-04-04 18:10
제목 적기가 참 애매하군요...

컴포넌트 A에서 B로 드랙앤드랍 하고 싶은데요.

A의 DragMode를 dmAutomatic으로 두고

DragKind를 dkDrag로 설정한 다음 드래그를 하면 드래그 중인 화면은 없고 Target 위에 마우스가 갔을때 드래그 커서로 바뀌고,

DragKind를 dkDock으로 두면 드래그 중일때 윈도우즈 설정에 "마우스로 끄는 동안 창 내용 표시"를 꺼 놓은 상태에서는 테두리만 이동을 하지 않습니까?

그래서 ReleaseCapture(); 와 Perform(WM_SYSCOMMAND, 0xf012, 0); 으로 드래그 중에 컨트롤을 실제로 이동 시켜 줄려고 했는데요...  DragMode가 dmAutomatic으로 셋팅 된 경우에는 전혀 먹지를 않는군요.

그러니까 제가 하고자 하는 작업은 컨트롤을 드래그 해서 다른 컨트롤위에 떨어뜨리면 Target쪽에서 이벤트(Source의 포인터를 액세스 할 수 있게)를 발생시키고자 하는 것이거든요.

물론 드래그 되는 동안에는 윈도우즈의 옵션에 상관없이 테두리 무늬만 이동되는 것이 아닌 실제로 이동이 되었으면 좋겠구요. 도킹은 시키지 않을것입니다.

아마도 ReleaseCapture 와 Perform을 이용해서 이동하는게 좋을것 같은데 드랍시에 이벤트 발생을 어떻게 시켜야 할지 정리가 되질 않네요.

묘수가 있으시면 알려주십시오. 새 컴포넌트를 제작하는 방법도 환영입니다요~
TGraphicControl, TWinControl 다 좋습니다.

+ -

관련 글 리스트
17223 [질문] VCL에서 VCL로 Drag & Drop Falco 926 2002/04/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.