我的绘图对话框用的非模态创建的,我想在里面定时更新绘图内容,但是怎么都绘不出,代码如下,求高人帮助
void ShowInfor::DrawMsg(CString csText)
{
TRACE("draw.....\n");
CPaintDC dc(this); // device context for painting
CBitmap *pbmp;
CBitmap bmp;
bmp.LoadBitmap(IDB_BGERROR);
CDC MemDC;
CRect rect;
this->GetClientRect(&rect);
MemDC.CreateCompatibleDC(&dc);
pbmp=MemDC.SelectObject(&bmp);
MemDC.SetTextColor(RGB(255,255,255));
MemDC.SetBkMode(TRANSPARENT);
MemDC.DrawText(csText,&rect,DT_WORDBREAK); dc.BitBlt(0,0,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(pbmp);
MemDC.DeleteDC();
bmp.DeleteObject();
}
这个在onpaint里和timer里都有调用,加了TRACE跟踪,发现并没有进绘图函数,onpaint里也没有进,timer里也没进,在对话框创建后紧跟着进行着socket通信
,通信完就destroy对话框。我开始以为是非模态的原因检测不到消息,但是我新建个工程一切都是正常的高手出来说两句话啊!