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
[49466] Re:Re:폼 내의 컨트롤(컴포넌트) 이동하기
수야!╋ [sooya23] 1384 읽음    2007-05-30 18:45
답변감사합니다.

친절한 답변에 감탄을!!

다시 한번 감사드립니다.

[수정]
질문한 겸 혹시 누군가 TImage를 이동하면서 귀찮으시다면

간단한 팁정도..

TImage를 이동하고 싶을때는 패널에 TImage를 올려놓고 TImage의 MouseDown에서 패널을 이동시키면

그냥 TImage가 이동되는 것처럼 됩니다.

뭐 그냥.. 팁일뿐..


장성호 님이 쓰신 글 :
: 런타임때 Control 을 마우스로 클릭해서 옮기는것은?
:
: [방법1]
: 보통 TWinControl은
: MouseDown이벤트에서 아래와 같이 코딩하면 됩니다.
:
: void __fastcall TForm1::Panel1MouseDown(TObject *Sender,
:       TMouseButton Button, TShiftState Shift, int X, int Y)
: {
:     TWinControl *wCtrl=(TWinControl *)Sender;
:     ReleaseCapture();
:     SendMessage(wCtrl->Handle,WM_SYSCOMMAND, 0xf012, 0);
:     // 또는  wCtrl->Perform(WM_SYSCOMMAND, 0xf012, 0);
: }
: //---------------------------------------------------------------------------
:
:
:
: [방법2]
: 그러나 TImage는 안됩니다.
: 왜냐하면 Handle이 없기 때문입니다.
:
:
: TImage 를 Mouse로  위치를 이동하려면
: MouseDown   , MouseMove 이벤트를 이용해야 합니다.
:
: 그냥 마우스 Down때 좌표 기억하고
: Move때 움직인 Delta만큼 TImage의 좌표를 바꿔주면 됩니다.
:
:
: TImage *movImg;
: int DeltaX;
: int DeltaY;
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::Image1MouseDown(TObject *Sender,
:       TMouseButton Button, TShiftState Shift, int X, int Y)
: {
:     movImg=(TImage *)Sender;
:     movImg->BringToFront();
:     DeltaX=X;
:     DeltaY=Y;
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,
:       int X, int Y)
: {
:     if(Shift.Contains(ssLeft))
:    {
:         int dx=X-DeltaX;
:         int dy=Y-DeltaY;
:         if(movImg)
:         {
:             movImg->Left+=dx;
:             movImg->Top+=dy;
:         }
:     }
: }
: //---------------------------------------------------------------------------
:
: 그럼...
:
:
:
: 수야!╋ 님이 쓰신 글 :
: : 안녕하세요 ^^;;
: :
: : 하도 오랫만이라 생각이 안나네요. 검색을 해봐도 안나오고해서 ㅎ_ㅎ;;
: :
: : TForm 내에 있는 TImage같은 컨트롤들을 TForm 내에서 이동하고자 합니다.
: :
: : 물론 마우스로요.
: :
: : 간단한 명령어였던걸로 기억하는데.. 아시는분 답변좀 부탁드릴께요~
: :
: : 아.. 생각이 안나 ㅠ.ㅠ

+ -

관련 글 리스트
49459 폼 내의 컨트롤(컴포넌트) 이동하기 수야!╋ 1240 2007/05/30
49461     Re:폼 내의 컨트롤(컴포넌트) 이동하기 장성호 1461 2007/05/30
49466         Re:Re:폼 내의 컨트롤(컴포넌트) 이동하기 수야!╋ 1384 2007/05/30
49460     Re:폼 내의 컨트롤(컴포넌트) 이동하기 답변이 1218 2007/05/30
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.