在CB中响应消息及自定义消息

襄杉沫

襄杉沫

2016-02-19 15:17

想要天天向上,就要懂得享受学习。图老师为大家推荐在CB中响应消息及自定义消息,精彩的内容需要你们用心的阅读。还在等什么快点来看看吧!

  在 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;其它的消息响应方法与此相同。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  另外,可以为自定义的消息也定义一个对应的消息结构(如:TSearchNode_Message),至于如何定义消息结构, 可以参考 Borland 的源代码:C:Program FilesBorlandCBuilderinlucdevclMessages.hpp

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

在CB中响应消息及自定义消息

编程语言 网络编程
在CB中响应消息及自定义消息

在VC中添加响应自定义的消息的代码步骤

编程语言 网络编程
在VC中添加响应自定义的消息的代码步骤

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

QQ怎么自定义好友上线和消息的提示声音

电脑入门
QQ怎么自定义好友上线和消息的提示声音

在VB中动态添加可响应消息的控件

编程语言 网络编程
在VB中动态添加可响应消息的控件

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

笔记:vc6.0添加自定义用户消息的基本过程

编程语言 网络编程
笔记:vc6.0添加自定义用户消息的基本过程

在WEB自定义控件中实现事件及自动保存值

电脑网络
在WEB自定义控件中实现事件及自动保存值

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

如何大批量激活Windows7系统与Office2010

如何大批量激活Windows7系统与Office2010

CSS控制浏览器滚动条的源代码

CSS控制浏览器滚动条的源代码
下拉加载更多内容 ↓