自定义消息id
#define WM_MSG WM_USER+100
绑定消息函数
ON_MESSAGE(WM_MSG, OnMsg)
实现onMsg函数
LRESULT CTestLogDlg::OnMsg(WPARAM wP, LPARAM lP)
{
CString str;
MYMSG* mymsg = (MYMSG*)(lP);
str.Format(L"%s\r\n", mymsg->str);
m_logshow.ReplaceSel(str);
return 0;
}
其中MYMSG是我自定义的消息结构体
typedef struct mymsg {
int msgid;
CString str;
}MYMSG;
下面进行调用
void CTestLogDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
static int index = 0;
m_logstr.Format(L"ssssss%d",index);
index++;
showlog(m_logstr);
}
void CTestLogDlg::showlog(CString str)
{
MYMSG * mymsg = new MYMSG;
mymsg->msgid = 1;
mymsg->str = str;
::PostMessage(::AfxGetMainWnd()->m_hWnd, WM_MSG, 0, (LPARAM)mymsg);
}
其中log显示框属性如下所示
结果如下所示