MFC怎么为不同的对话框设置不同的背景

MFC怎么为不同的对话框设置不同的背景,第1张

MFC设置背景,采用添加Bitmap的方法,首先把你想要设置为背景的图片转换成bmp格式,然后再引入到工程里面,再在每个对话框中添加控件,再选择。具体见图:

1、首先在工程添加bitmap,右击工程名,添加。

2、右击bitmap,选择引入。

3、在下面的d出的窗口中,选择文件类型,再找到你的bmp文件

4、引入成功后,再打开你的对话框(不同的对话框,选择不同的bitmap1/2/3)

5、选择第二个控件,在你的对话框中点击

6、再点击控件属性,在属性中选择位图,下面的选择你的bitmap1、2、3

不同的对话框中,选择不同的图像就行了,图像就是你引入的。

第一步,用向导添加WM_CTLCOLOR消息

第二步,在主窗口类的头文件类定义添加成员变量:CBrush m_brush

第三步,在主窗口类的初始化函数中添加:

CBitmap *bitm=new CBitmap

bitm->LoadBitmap(IDB_BITMAP1)

m_brush.CreatePatternBrush(bitm)

delete bitm

第四:在OnCtlColor中添加:

if(pWnd == this)

return (HBRUSH)m_brush

在生成的类中添加重载的虚函数OnCtlColor(CDC

*pDC,CWnd *pWnd,UINT nCtlColor)。

可以在该函数中设置pDC->SetBkMode(TRANSPARENT)将文本的背景设置为透明。

可以在该函数中设置pDC->SetTextColor(RGB(255,0,0))将文本的颜色设置为红色。

也可以指定某一静态文本的字体颜色,可以加如下判断:

switch(pWnd->GetDlgCtrlID())

{

case IDC_INFO:

pDC->SetBkMode(TRANSPARENT)

pDC->SetTextColor(RGB(255,0,0))

}

这个判断,可以仅仅将ID号为IDC_INFO的静态文本的字体颜色设置为红色。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/10951029.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-12
下一篇 2023-05-12

发表评论

登录后才能评论

评论列表(0条)

保存