|
방태윤 님이 쓰신 글 :
: Application->OnMessage 를 사용해 보시지요...
:
: void __fastcall TForm1::FormCreate(TObject *Sender)
: {
: Application->OnMessage = AppMessage;
: }
: void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)
: {
: if(Msg.message==WM_RBUTTONDOWN){
: POINT p;
: GetCursorPos(&p); //커서 위치구하고
: ScreenToClient(p); //좌표변환도 하고
: pop1->popup(x,y);//팦업도 띄어주고 제약사항있으면 하고..
: Handled = true;
: }
: }
:
:
: 현정환 님이 쓰신 글 :
: : 안녕세요..
: :
: : Form 에서 팝업을 만들어서 Form 의 popupmenu 속성으로 사용했었는데..
: :
: : 그때는 폼 위에 어디를 오른쪽 클릭해도 (폼 위에 어떤 콤포넌트가 있던간에)
: :
: : 팝업이 떴었습니다. 근데 이 팝업놈을 어떤 조건에서는 뜨지 않게 하려고
: :
: : 하다가 어떻게 할 수 있을까 하다가.
: :
: : 폼의 mouseup 이벤트를 잡아서 마우스 오른쪽이고 어떤 조건에 맞는다면
: :
: : 팝업을 띄워주게 고쳤습니다..
: :
: : 근데 그렇게 하고 나니까 폼 위에 있는 어떤 콤포넌트 위에서는 오른쪽
: :
: : 클릭을 해도 안 먹더군요..
: :
: : 그래서 무식하지만 -.-;; 모든 콤포넌트의 mouseup 이벤트를 Form의
: :
: : 마우스up 이벤트랑 연결된 함수로 연결했습니다..
: :
: : 그랬더니 TreeView 같은 놈은 마우스 오른쪽을 더블클릭해야 팝업이 뜨더군요..
: :
: : 에겅.. 뭔가 좋은 방법이 없을까요..
: :
|