在基于对话框的程序中画图
我的程序是基于对话框的,想要在程序启动后就在对话框的右上角画出一副位图作为一个log
可是我谢的画图函数只能在运行后点击某个按钮时调用才起作用,我在OnInitDialog()中调用就不行,图画不出来,也不报错。
画图程序如下:
void CTmCETCirDlg::drawlog(CDC* pDC,RECT* pRect)
{
CBitmap bitmap;
BOOL pass = bitmap.LoadBitmap(IDB_BITMAP_COMPANYLOG);
CDC dcComp;
dcComp.CreateCompatibleDC(pDC);
dcComp.SelectObject(&bitmap);
BITMAP bmInfo;
bitmap.GetObject(sizeof(bmInfo),&bmInfo);
int xsrc = pRect->left;
int ysrc = pRect->top +10;
int nsrcWidth = pRect->right - xsrc;
int nsrcHeight = pRect->bottom - ysrc;
pass = pDC->StretchBlt(xsrc,ysrc,
nsrcWidth,nsrcHeight,&dcComp,0,0,bmInfo.bmWidth,bmInfo.bmHeight,SRCCOPY);
}
我传入函数的pDC是对话框函数getdc()获得的指针,pRect是要画的位置,IDB_BITMAP_COMPANYLOG是资源中的位图
函数应该没问题。可问什么函数放在开始的OnInitDialog()执行以后没有图看到,而放在按钮消息处理函数中调用就可以啊
我跟踪了一下,发现函数执行了,可不知图画到哪了
有没有高手指点一下。还是有其他的方法是实现我要的功能,就是让对话框第一次出现时,能够把我指定的位图画在对话框的指定位置。
希望大家给点建议