Q&A

  • 매 6초간 자동으로 마우스 오른쪽 버튼을 누를수 있게할려면 어떻게 해야 하나요?
매크로 프로그램을 사용하다가 델파이로 구현할수 없을까

궁금해서 하다가 두손 두발 다든 왕 초보입니다..ㅡㅡ;;

어떻게 델파이로 자동으로 마우스가 눌려지는 이벤트를 구현할수 있나요?

고수 여러분의 자문을 구합니다...
4  COMMENTS
  • Profile
    보들레르 2002.03.20 23:23



    6초마다 동작하는 타이머 안에 아래 코드를삽입하세요

    var
      Pt : Pointer;
    begin
      // 마우스 커서를 특정위치로 이동
    Mouse_Event(MOUSEEVENTF_ABSOLUTE or
                 MOUSEEVENTF_MOVE,
                 Pt.x,
                 Pt.y,
                 0,
                 0);
    //특정위치에 누름
    Mouse_Event(MOUSEEVENTF_ABSOLUTE or
                 MOUSEEVENTF_LEFTDOWN,
                 Pt.x,
                 Pt.y,
                 0,
                 0);;

    //특정위치에 눌렀던 것을 뗌
    Mouse_Event(MOUSEEVENTF_ABSOLUTE or
                 MOUSEEVENTF_LEFTUP,
                 Pt.x,
                 Pt.y,
                 0,
                 0);
    end;

    더 자세한 것은 WinAPI Help 를 참고 하시구여~

    그럼 항상 즐거운 프로그래밍 하시길~~
  • Profile
    정형원 2002.03.21 01:44
    감사합니다 덕분에 제가 원하는 답에 거의 근접해 갔습니다..^^

    정말 이럴때는 프로그램 짜면서 즐거워 집니다..^^

    그럼 수고하세여~
  • Profile
    김용일 2002.03.18 20:52
    윈도우 API를 사용하여 구현할 수 있습니다.

    먼저, Form에다 TTimer(System Palette에 있음)를 올려 놓고 Interval을 6000(6초)으로 설정하세요.

    그런다음, Timer 컴포넌트를 더블클릭하여 아래와 같이 코딩하십시오.

    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
        PostMessage(Form1.Handle, WM_RBUTTONDOWN, 0, 0);
        PostMessage(Form1.Handle, WM_RBUTTONUP, 0, 0);
    end;

    처리할 내용과 연결하시면 잘 되실 것입니다.
    도움이 되셨기를...
  • Profile
    정형원 2002.03.18 21:51
    김용일님의 가르침으로 델파이상에서는 되는걸 확인했습니다..

    그런데 델파이를 벗어난....예를 들어 바탕화면에서는 안되더군여...

    혹시 이걸 해결할 방법은 없나요?