网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
工具条的停靠控制
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式
/设置偏移植以停靠在同一边上

----dw=LeftOf->GetBarStyle();

----n=(dw&CBRS_ALIGN_TOP)?AFX_IDW_DOCKBAR_TOP:n;

----n=(dw&CBRS_ALIGN_BOTTOM&&n==0)?AFX_IDW_DOCKBAR_BOTTOM:n;

----n=(dw&CBRS_ALIGN_LEFT&&n==0)?AFX_IDW_DOCKBAR_LEFT:n;

----n=(dw&CBRS_ALIGN_RIGHT&&n==0)?AFX_IDW_DOCKBAR_RIGHT:n;

----DockControlBar(Bar,n,&rect);

----}

----在这个函数中应注意对RecalcLayout()函数和OffestRect()函数的调用,前者用来重新显示被调整的客户区和工具条,后者用来重新确定矩形区域,这相当于利用鼠标将第二个工具条窗口拖动到前一个工具条上然后释放。

----3.修改应用程序建立函数OnCreate()中的相应DockControlBar()函数为DockControlBarOf()函数,并正确设置工具条对象的指针。笔者在实现程序中的控制代码如下:

----EnableDocking(CBRS_ALIGN_ANY);//停靠位置必须在最前面

----//工具条建立函数

----m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);

----m_wndTestToolBar.EnableDocking(CBRS_ALIGN_ANY);

----DockControlBar(&m_wndToolBar,AFX_IDW_DOCKBAR_TOP);

----//使两个工具条并列停靠

----DockControlBarLeftOf(&m_wndTestToolBar,&m_wndToolBar);

----工具条的顶部停靠控制

----1.打开菜单资源增加顶部位置控制菜单项IDD_DLGBARTOP;

----2.在实现文件MainFrm.h中增加成员控制变量m_bDialogTop:

----BOOLm_bDialogTop;

----并在构造函数中设置初始值;

----3.利用类向导ClassWizard为菜单项设置响应函数;

----4.在实现文件MainFrm.cpp中通过充分利用SetWindowPos()成员完善消息映射功能。


voidCMainFrame::OnButtonDIgbartop()

{//定制工具条顶部位置控制函数
if(m_bDialogTop)
m_wndDIgBar.SetWindowPos(&m_wndStatusBar,0,0,0,0,
SWP_NOSIZE|SWP_NOMOVE);
//顶部工具条停靠在窗口边,左右工具条停靠其下
else
m_wndDIgBar.SetWindowPos(&wndTop,0,0,0,0,
SWP_NOSIZE|SWP_NOMOVE);//停靠在最顶部
RecalcLayout();//重新显示窗口
m_bDialogTop=!m_bDialogTop;//改变变量标志
}
voidCMainFrame::OnUpdateButtonDIgbartop(CCmdUI*pCmdUI)
{//设置菜单项检查状态更新函数
pCmdUI-SetCheck(m_bDialogTop);
}

----这样,就可利用菜单项来控制定制工具条的顶部停靠位置。

  • 下一篇资讯: 用VC实现远程修改NT帐号
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号