|
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는 폼 객체인것 같고,
: : : 두 번째랑 세번째 인수는 잘 모르겠어용..
|