这是一个电子白板源码,原来显示在线人数没问题,但是在CMainFrame类加了BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)函数分割视图后就不能显示了。
我是用消息事件进行收发事件的。响应事件代码如下
void CMainFrame::OnAddMember(WPARAM wParam, LPARAM lParam)
{
CString* pStr = (CString*)wParam;
this->dlgBar.m_olist.AddItem((short)lParam, pStr->GetBuffer(0), NULL);
pStr->ReleaseBuffer(); }
触发事件是在CConferenceView进行的,相关代码:
#define WM_ADDLIST WM_USER + 1001 void CConferenceView::ReceiveMsg ()//接收信息
{
CMsg msg;
msg.Serialize (*m_pArchiveIn);//从存档中取出信息
if(msg.picture==-1 && msg.from!=user_name)
GetParent()->SendMessage(WM_ADDLIST, (LPARAM)&(msg.from), 6);
if(msg.picture == -3)
GetParent()->SendMessage(WM_ADDLIST + 1, (LPARAM)&(msg.from), 6);
}这是什么原因?怎么解决?谢谢!!
源码下载地址
http://www.yuanshengkj.com/bbs/topic.asp?topic_id=1832&forum_id=39
我是用消息事件进行收发事件的。响应事件代码如下
void CMainFrame::OnAddMember(WPARAM wParam, LPARAM lParam)
{
CString* pStr = (CString*)wParam;
this->dlgBar.m_olist.AddItem((short)lParam, pStr->GetBuffer(0), NULL);
pStr->ReleaseBuffer(); }
触发事件是在CConferenceView进行的,相关代码:
#define WM_ADDLIST WM_USER + 1001 void CConferenceView::ReceiveMsg ()//接收信息
{
CMsg msg;
msg.Serialize (*m_pArchiveIn);//从存档中取出信息
if(msg.picture==-1 && msg.from!=user_name)
GetParent()->SendMessage(WM_ADDLIST, (LPARAM)&(msg.from), 6);
if(msg.picture == -3)
GetParent()->SendMessage(WM_ADDLIST + 1, (LPARAM)&(msg.from), 6);
}这是什么原因?怎么解决?谢谢!!
源码下载地址
http://www.yuanshengkj.com/bbs/topic.asp?topic_id=1832&forum_id=39
::SendMessage(((CMainFrame*)AfxGetMainWnd())->m_hWnd
我一般在分割窗口后,分割的窗体向主window是这样发送消息的。