VC自定義訊息postmessage用法(訊息響應函式)

ForTechnology發表於2011-08-07
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 VC自定義訊息postmessage用法(訊息響應函式)

來源:考試大     20090814 14:48

  VC 自定義訊息 postmessage用法

  1. resource.h檔案新增如下程式碼 定一個自己的訊息

  #define WM_MY_MESSAGE WM_USER + 100 //---------------------by tyds

  2....view.h的檔案新增如下:

  //{{AFX_MSG(CPostmessageView)

  afx_msg void Ontydspostmessage();

  afx_msg /*LRESULT*/ void OnMyMessage(/*WPARAM wParam, LPARAM lParam*/); //----- by tyds

  //}}AFX_MSG

  DECLARE_MESSAGE_MAP()

  3....view.cpp檔案新增如下程式碼

  BEGIN_MESSAGE_MAP(CPostmessageView, CView)

  //{{AFX_MSG_MAP(CPostmessageView)

  ON_COMMAND(ID_tyds_postmessage, Ontydspostmessage)

  ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage) //新增訊息對映---------------------by tyds

  //}}AFX_MSG_MAP

  // Standard printing commands

  ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)

  ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)

  ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)

 

  END_MESSAGE_MAP()

  void CPostmessageView::Ontydspostmessage()

  {

  MessageBox("begin post message!");

  //PostMessage(WM_MY_MESSAGE); //這裡 PostMessage SendMessage 兩則區別是

  SendMessage(WM_MY_MESSAGE); //PostMessage 是發出去就返回 SendMessage是發出去等到被 //執行了 在返回

  }

  訊息相應函式

  /*LPESULT*/void CPostmessageView::OnMyMessage(/*WPARAM wParam, LPARAM lParam*/) //注意這裡 的引數可要可不要 根據自己來定 返回值也一樣

  {

  MessageBox("post msg finished!");

  // return 0;

  }

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25897606/viewspace-704357/,如需轉載,請註明出處,否則將追究法律責任。

相關文章