关于自定义消息调用函数的问题

wilsonloveada 2003-08-24 10:20:24
用RegisterWindowMessage自定义一个消息,怎样让它连动一个函数?用BEGIN_MESSAGE_MAP和END_MESSAGE_MAP吗?应该怎样写?

函数为: int __fastcall ProcMsg(int aa,int bb)

自定义消息为: static const UINT MsgData=::RegisterWindowMessage(Data);
其中Data为:#define Data "ready"

谢谢各位大虾的帮助!!!
在线等候.
...全文
48 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
IT动力 2003-08-24
  • 打赏
  • 举报
回复
消息处理函数给错了,更正:
//---------------------------------------------------------------------------
void __fastcall TMain_Form::OnQueryEnd(TObject *Sender)
{
//等候线程结束
WaitForSingleObject((HANDLE)m_pQueryThread->Handle,INFINITE);
delete m_pQueryThread;
m_pQueryThread=0; B_Stop->Enabled=false;
B_Query->Enabled=true;
B_Close->Enabled=true;

B_Print->Enabled=(bool)ListView1->Items->Count;
B_SaveAs->Enabled=(bool)ListView1->Items->Count;
}
IT动力 2003-08-24
  • 打赏
  • 举报
回复
也可以将TObject * 换成TMessage
BCB的HELP中可以查到
IT动力 2003-08-24
  • 打赏
  • 举报
回复
//消息:由线程向主窗口发送,表示查询线程将要终止
#define MESSAGE_THREAD_EXIT WM_USER+101
class TMain_Form : public TForm
{
...
public: // User declarations
void __fastcall OnQueryEnd(TObject *Sender);
public:
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(MESSAGE_THREAD_EXIT,TObject *,OnQueryEnd)
END_MESSAGE_MAP(TForm)
//cpp file
//---------------------------------------------------------------------------

void __fastcall TMain_Form::B_StopClick(TObject *Sender)
{
if(!m_pQueryThread)
return;
m_pQueryThread->m_bContinue=false;
}

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧