国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

在CB中響應消息及自定義消息

2019-09-06 23:33:52
字體:
來源:轉載
供稿:網友

                      在 Borland C++Builder 中,也可以象在 Delphi 中一樣響應消息,只是看起來要稍復雜一點。對于系統已定義的消息,可以直接響應,而對于非系統消息可以照如下自定義:

//以下代碼寫在頭文件中:
#define WM_MY_OPEN_CMDLINE_FILE (WM_USER+1) //進程間通訊的自定義消息
#define WM_MY_SEARCH_NODE (WM_USER+2) //查找命令的自定義消息
class TSomeForm : public TForm
{//某窗體的類定義


//...類中的其它代碼
protected:
//消息的響應過程
void __fastcall OpenCmdLineFile(TMessage Message);
void __fastcall SearchDocumentNode(TMessage Message);
void __fastcall GetWindowMinMaxInfo(TWMGetMinMaxInfo Message);
//通過以下宏定義實現消息的正確響應
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_MY_OPEN_CMDLINE_FILE, TMessage, OpenCmdLineFile)
MESSAGE_HANDLER(WM_MY_SEARCH_NODE, TMessage, SearchDocumentNode)
MESSAGE_HANDLER(WM_GETMINMAXINFO , TWMGetMinMaxInfo, GetWindowMinMaxInfo)
END_MESSAGE_MAP(TForm)

};//end class

--------------------------------------------------------------------------------
//以下為實現代碼,寫在模塊文件中:
void __fastcall TSomeForm::OpenCmdLineFile(TMessage Message)
{//直接通過消息結構傳遞參數
LPSTR lpCmdLine=(LPSTR)Message.LParam;//從Message中取得參數
this->HandleCmdLineFile(lpCmdLine);//處理命令行的參數
return;
}

--------------------------------------------------------------------------------
void __fastcall TSomeForm::SearchDocumentNode(TMessage Message)
{//響應查找消息

//Message中的參數在此處不需要。
this->SearchNode();
return;

}

--------------------------------------------------------------------------------
void __fastcall TSomeForm::GetWindowMinMaxInfo(TWMGetMinMaxInfo Message)
{//設置主窗口的最小尺寸

MINMAXINFO *MinMaxInfo=Message.MinMaxInfo;
MinMaxInfo->ptMinTrackSize.x=400;
MinMaxInfo->ptMinTrackSize.y=300;
return;

}
其中:TMessage和TWMGetMinMaxInfo類型的定義可參見:C:Program FilesBorlandCBuilderinlucdevclMessages.hpp;其它的消息響應方法與此相同。
另外,可以為自定義的消息也定義一個對應的消息結構(如:TSearchNode_Message),至于如何定義消息結構, 可以參考 Borland 的源代碼:C:Program FilesBorlandCBuilderinlucdevclMessages.hpp
上一篇:讀磁片磁區

下一篇:攔截Windows消息

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 永嘉县| 礼泉县| 胶南市| 锦屏县| 麦盖提县| 湘潭县| 凤翔县| 天长市| 紫金县| 临沭县| 碌曲县| 巫山县| 盐边县| 东乌| 遵义市| 富平县| 逊克县| 益阳市| 简阳市| 新蔡县| 安西县| 石楼县| 固阳县| 唐海县| 西城区| 揭西县| 隆回县| 格尔木市| 永吉县| 新源县| 夏津县| 五家渠市| 清镇市| 泾阳县| 永宁县| 合作市| 凤翔县| 蒙城县| 龙江县| 广州市| 文水县|