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
[52956] Re:Re:Re: 죄송합니다.. 질문이 한가지 틀려서요..
장성호 [nasilso] 1156 읽음    2008-03-31 14:45
Serial로 어떤 data를 수신해서 그것으로  MouseDown함수를 호출하고자 하시는거네요...

1. 먼저 TMouseButton  은?
     enum TMouseButton { mbLeft, mbRight, mbMiddle };
     위와같이 선언되어있죠

    Image1MouseDown(image1,mbLeft,****);
    뭐 위와같이 호출하면 됩니다. mbLeft 는 마우스 왼쪽 버튼이 눌려졌다는 뜻이죠
  
2. 그다음 TShiftState

선언이...
   typedef Set<Classes__1, ssShift, ssDouble>  TShiftState; 이렇게 되어있고

Classes__1 은
    enum Classes__1 { ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble };

위와같이 되어있죠
   그건 이렇게...
    Image1MouseDown(Sender,mbLeft,TShiftState()<<ssLeft,0,0);


즉..

void __fastcall B::ComPortRxChar(TObject *Sender, int Count)
{
     if( 입력받은 데이터가 있다면 )
     {
           int x,y;
           x=***;
           y=***;
           TShiftState ts=TShiftState()<<ssLeft<<ssAlt;

           A->ImageAMouseDown( A->ImageA,mbLeft,ts,x,y);
     }
}

뭐 저런식으로 하면 된다는....


그럼..

조각발 님이 쓰신 글 :
: A 폼에 이미지가 있는건 맞구요,
:
: B 폼에서 호출하는 놈이 ImageB의 MouseDown 이 아니고
:
: ComPort 의 ComPortRxChar(TObject *Sender, int Count) 였어용...
:
: void __fastcall B::ComPortRxChar(TObject *Sender, int Count)
: {
:     if( 입력받은 데이터가 있다면 )
:           A->ImageAMouseDown( ??????????????????????? );
: }
:
: 이거였는데... 시간내서 답변해주셨는데 죄송합니다..
:
: Button, Shift, X, Y 인자가 없어서 에러가 나네요..
:
: 혹시 이렇게 안된다면
:
: // 어쩌구 저쩌구 일해라...   <= 이놈을 따로 함수를 만들어서 양쪽에서 호출하는 것이 맞을까요??
:
: 장성호 님이 쓰신 글 :
: : void __fastcall A::ImageAMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
: : {
: :       // 어쩌구 저쩌구 일해라...
: : }
: :
: : void __fastcall B::ImageBMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
: : {
: :      A->ImageAMouseDown( A->ImageA,Button,Shift,X,Y);   //이렇게 하면.... 될것 같은데요...
: :                                                                                           //그러면 "어쩌구 저쩌구 일해라..."가 돌아갈듯...
: : }
: :
: : 그럼...
: :
: :
: : 조각발 님이 쓰신 글 :
: : : A 폼의 ImageA를 MouseDown 할 때, A.cpp 에서는
: : :
: : : void __fastcall A::ImageAMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
: : : {
: : :       // 어쩌구 저쩌구 일해라...
: : : }
: : :
: : : 욜케 되자나요,
: : :
: : : 헌데 B 폼에서 ImageB를 MouseDown 할 때, ImageA를 MouseDown 할 때와 같은 효과를 내려고 할때요
: : :
: : : void __fastcall B::ImageBMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
: : : {
: : :      A->ImageAMouseDown( ??????????????????????? );
: : : }
: : :
: : : 저 안에 들어갈 인수를 어케 적어야 할지 모르겟어요..
: : :
: : : A폼 안에서 될 실행될 때는
: : : X, Y는 이미지 0에서부터의 X, Y 좌표인데,
: : : Sender는 폼 객체인것 같고,
: : : 두 번째랑 세번째 인수는 잘 모르겠어용..

+ -

관련 글 리스트
52951 다른 폼에 있는 함수를 호출할 때 인수관련 질문요 조각발 1120 2008/03/31
52955     Re:다른 폼에 있는 함수를 호출할 때 인수관련 질문요 civilian 1158 2008/03/31
52953     Re:다른 폼에 있는 함수를 호출할 때 인수관련 질문요 장성호 1020 2008/03/31
52954         Re:Re: 죄송합니다.. 질문이 한가지 틀려서요.. 조각발 985 2008/03/31
52956             Re:Re:Re: 죄송합니다.. 질문이 한가지 틀려서요.. 장성호 1156 2008/03/31
52957                 하핫~! 두분 모두 답변 감사드립니다 ! (냉무) 조각발 1198 2008/03/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.