MFC的导航窗格浮窗设计

MFC的导航窗格浮窗设计(2003格式)
class COutlookBar : public CMFCOutlookBar
{
protected:
DECLARE_DYNCREATE(COutlookBar)
DECLARE_MESSAGE_MAP()

private:
afx_msg LRESULT OnChangeActiveTab(WPARAM,LPARAM);
virtual BOOL AllowShowOnPaneMenu() const { return TRUE; }
};
COutlookBar bar;///创建一个导航窗口类对象
bar.SetMode2003();//设置为2003的格式
CMFCOutlookBarPane m_wndMonitorPane;//外观工具栏窗格
CMFCOutlookBarPane m_wndDataBasePane;
CMFCOutlookBarPane m_wndSysQueryPane;创建导航窗格的选项卡
CMFCOutlookBarPane m_wndSysConfigPane;
if (!bar.Create(strTemp, this, CRect(0, 0, nInitialWidth, 32000), uiID, WS_CHILD | WS_VISIBLE | CBRS_LEFT))
{
return FALSE; // 未能创建
}

CMFCOutlookBarTabCtrl* pOutlookBar = (CMFCOutlookBarTabCtrl*)bar.GetUnderlyingWindow();//获取bar对象的控件对象

if (pOutlookBar == NULL)
{
	ASSERT(FALSE);
	return FALSE;
}

static UINT uiPageID = 1;

DWORD dwPaneStyle = AFX_DEFAULT_TOOLBAR_STYLE | CBRS_FLOAT_MULTI;选项卡的格式

// 可浮动,可自动隐藏,可调整大小,但不能关闭
DWORD dwStyle = AFX_CBRS_FLOAT | AFX_CBRS_AUTOHIDE | AFX_CBRS_RESIZE;;选项卡的格式

Monitorpane.Create(&bar, dwPaneStyle, uiPageID++, dwStyle);
Monitorpane.SetOwner(this);
Monitorpane.EnableTextLabels();///这几行为选项卡创建实体
Monitorpane.EnableDocking(CBRS_ALIGN_ANY);/

DataBasepane.Create(&bar, dwPaneStyle, uiPageID++, dwStyle);
DataBasepane.SetOwner(this);
DataBasepane.EnableTextLabels();
DataBasepane.EnableDocking(CBRS_ALIGN_ANY);

SysQuerypane.Create(&bar, dwPaneStyle, uiPageID++, dwStyle);
SysQuerypane.SetOwner(this);
SysQuerypane.EnableTextLabels();
SysQuerypane.EnableDocking(CBRS_ALIGN_ANY);

SysConfigpane.Create(&bar, dwPaneStyle, uiPageID++, dwStyle);
SysConfigpane.SetOwner(this);
SysConfigpane.EnableTextLabels();
SysConfigpane.EnableDocking(CBRS_ALIGN_ANY);

CImageList images;///图片存储表;
CBitmap bmp;//位图
if (!bmp.LoadBitmap(bIsHiColor ? IDB_NAVIGATION_LARGE_HC : IDB_NAVIGATION_LARGE))//加载位图资源
{
	return FALSE;
}

BITMAP bm;
bmp.GetBitmap(&bm);

UINT nFlags = ILC_MASK;

if (bIsHiColor)
{
	nFlags |= ILC_COLOR24;
}
else
{
	nFlags |= ILC_COLOR;
}

images.Create(32, bm.bmHeight, nFlags, 0, 0);///为image创建空间
images.Add(&bmp, RGB(255, 0, 255));、、、、、、、、添加位图资源

为一个选项卡添加类容按钮
选项卡.AddButton(images.ExtractIcon(iIconIndex), strName, uiCmd)
图片 caption 控件ID
(只写了一个)
//
最后:
pOutlookBar->AddControl(&bar, strTemp, 0, TRUE, dwStyle);
把选项卡添加到bar中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值