设为首页 加入收藏

TOP

VC改变DialogBar的背景色
2014-11-23 19:22:53 来源: 作者: 【 】 浏览:23
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,并实现登..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: