在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 游戲操縱桿模擬鼠標的C++程序

            游戲操縱桿模擬鼠標的C++程序

            作者: 時間:2012-07-02 來源:網絡 收藏

             }

            本文引用地址:http://www.biyoush.com/article/148825.htm

              //繼續(xù)傳遞消息

              Tform::Dispatch(Message);

              }

              //自定義的MM_JOY1MOVE消息響應函數(shù)OnJoyDown

              void __fastcall TForm1::OnJoyMove(Tmessage Message)

              {

              int x,y;

              POINT pt;

              //取得當前坐標

              GetCursorPos(pt);

              x=LOWORD(Message.Lparam);

              y=HIWORD(Message.Lparam);

              if(x!=32678)

              {

              if(x)

              {

              //向右

              pt.x+=10;

              }

              else

              {

              //向左

              pt.x-=10;

              }

              }

              if(y!=32678)

              {

              if(y)

              {

              //向下

              pt.y+=10;

              }

              else

              {

              //向上

              pt.y-=10;

              }

              }

              //設置坐標

              SetCursorPos(pt.x,pt.y);

              //繼續(xù)傳遞消息

              Tform::Dispatch(Message);

              }

              注意:調試運行這個,系統(tǒng)必須要安裝有。自定義的消息處理函數(shù)末尾最好加一句 TForm1::Dispatch(Message),這條語句的作用是讓消息繼續(xù)傳遞下去。Windows是使用用消息處理機制的,如果沒有這一句語句,消息將完全被攔截,Windows可能由于得不到消息而無法實現(xiàn)正常的功能。

              但是在C++ Builder中,這兩條消息并不是標準的Windows消息,這就需要我們自已定義和處理消息了。在C++ Builder里響應自定義消息的步驟為:

              1.建立消息映射表

              2.聲明消息處理函數(shù)

              3.編寫消息處理函數(shù)

              首先在代碼編輯窗口點擊右鍵,選擇彈出菜單的“Open Source/Header File”或是按熱鍵Ctrl+F6,打開窗體Form1頭文件“Uint1.h”。

              在窗體的TForm1類中的公有成員中加入代碼來建立消息映射表,把消息的處理權交給自定義的消息處理函數(shù):

              public:

              BEGIN_MESSAGE_MAP

              MESSAGE_HANDLER(MM_JOY1BUTTONDOWN,Tmessage,OnJoyDown)

              MESSAGE_HANDLER(MM_JOY1MOVE,Tmessage,OnJoyMove)

              END_MESSAGE_MAP(Tform)

              然后在類的私有成員中加入代碼聲明消息處理函數(shù):

              private:

              void __fastcall OnJoyDown(Tmessage Message);

              void __fastcall OnJoyMove(Tmessage Message);

              最后,按Ctrl+F6鍵切換回“Uint1.cpp”的編輯窗口,在末尾空白處添加下面兩個自定義的消息響應函數(shù):

              //自定義的MM_JOY1BUTTONDOWN消息響應函數(shù)OnJoyDown

              void __fastcall TForm1::OnJoyDown(Tmessage Message)

              {

              if(Message.Wparam JOY_BUTTON1)

              {

              //左鍵按下

              mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);

              Caption=左鍵按下;

              }

              if(Message.Wparam JOY_BUTTON2)

              {

              //鼠標右鍵按下

              mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);

              Caption=右鍵按下;

              }

              if(Message.Wparam JOY_BUTTON3)

              {

              //鼠標左鍵抬起

              mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

              Caption=左鍵抬起;

              }

              if(Message.Wparam JOY_BUTTON4)

              {

              //模擬鼠標右鍵抬起

              mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);

              Caption=右鍵抬起;

            c++相關文章:c++教程



            上一頁 1 2 3 下一頁

            評論


            相關推薦

            技術專區(qū)

            關閉