设为首页 加入收藏

TOP

VC改变DialogBar的背景色
2014-11-23 19:22:53 】 浏览:603
Tags:改变 DialogBar 景色

折腾了一上午帮别人搞定了这个问题,记录一下,其实问题的关键就是需要从CDialogBar派生一个新类,在新类里面处理一下DoPaint事件就可以了

1.MainFrm.h添加#include "DialogBarEx.h"

class CMainFrame : public CFrameWnd
{
....
private:
CDialogBarEx m_wndDlgBar;
}

2.MainFrm.cpp添加
if (!m_wndDlgBar.Create(this, IDD_DIALOG1,
CBRS_TOP|CBRS_TOOLTIPS|CBRS_FLYBY, IDD_DIALOG1))
{
TRACE0( "Failed to create DlgBar\n ");
return -1; // fail to create
}

3.添加新类,CDialogBarEx,派生自CDialogBar
4.CDialogBarEx重载DoPaint

代码如下供参考:
DialogBarEx.h
class CDialogBarEx : public CDialogBar
{
DECLARE_DYNAMIC(CDialogBarEx)

public:
CDialogBarEx();
virtual ~CDialogBarEx();
virtual void DoPaint(CDC* pDC);【添加这句】

protected:
DECLARE_MESSAGE_MAP()
};

DialogBarEx.cpp
void CDialogBarEx::DoPaint(CDC* pDC)
{
CRect rc;
GetClientRect(&rc);

CBrush br(RGB(255, 0, 0));

pDC->FillRect(rc, &br);
}

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇VC获取默认浏览器 下一篇VS连接SQL Server 2008,并实现登..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目