【CDockablePane】关于CDockablePane】的更多相关文章

显示或者隐藏 当点击CDockablePane上的关闭按钮时,并不能将其关闭,知识将其隐藏了起来,如果需要重新显示或隐藏,则相关命令的响应函数如下: if(m_Panes.GetSafeHwnd()) { BOOL flag = !m_Panes.IsVisible(); m_Panes.ShowPane(flag,FALSE,flag); } 关闭按钮的响应函数 当点击CDockablePane上的关闭按钮时,主框架会进行响应 //关闭停靠窗口事件,事实上是隐藏窗体,还是占用资源的 BOOL…
CDockablePane中嵌入CFormView与嵌入CDialogEx稍有不同,差异主要体现在CFormView类本身与CDialogEx类的不同上,CDockablePane层面的操作完全相同. a)      创建单文档应用程序: b)     加入对话框资源,注意,对话框必须有Child属性,Border设置为None 由CFormView派生的类,可以关联一个对话框资源.但该对话框资源必须在属性设定中Style选定[Child]属性,否则的话, 代码可以编译,但Debug运行会报告一…
CDockablePane类可以用来创建停靠栏.可以将其他控件集成到CDockablePane的派生类中.下文描述如何将对话框集成到CDockablePane中. a)      创建单文档应用程序: b)     加入对话框资源,注意,对话框必须有Child属性,Border设置为None c)      为对话框创建类CDialogEmbeded,基类为CDialogEx d)     创建派生自CDockablePane的类CDockableDlg e)     为CDockableDlg…
屏蔽掉pane右上角的几个按钮 即将CDockablePane右上角的三个按钮屏蔽. 1            去掉关闭按钮 在CDockablePane的派生类中,重写方法CanBeClosed即可: virtual BOOL CanBeClosed() const { return FALSE; }  禁止拖动Pane,禁止浮动 在CDockablePane的派生类中,重写以下任一方法即可: virtual BOOL FloatPane(CRect rectFloat, AFX_DOCK_M…
基于 http://blog.csdn.net/kikaylee/article/details/8936953 CDockablePane的基本布局和用法 新建一个SDI工程,在CMainFrame类中添加一个CDockablePane数组: CDockablePane m_Panes[5];// 一个CDockablePane的数组 CMainFrame:: OnCreate() 函数中自动生成了以下代码: // 启用 Visual Studio 2005 样式停靠窗口行为 CDocking…
工作中编写MFC界面程序时用到了停靠窗口,为了避免之后用到时再去查询,这里记录下. 步骤 1.定义一个继承自CDockablePane的类 Class CDockableTest : public CDockablePane{} 2.MainFrm.h中声明 CDockableTest m_dockableTest; 3.CMainFrame::OnCreate中创建 EnableAutoHidePanes(CBRS_ALIGN_ANY);//窗口自动停靠 m_dockableTest.Crea…
最近看到一句话: ××××××××××××××××××××××××××××××××××××××××××× CDockablePane是一个通用窗口容器,它主要有两个用途:在一个框架中悬浮或者停靠窗口.在复杂布局的应用程序中,它可以显示或隐藏所装载的窗口,为应用程序窗口提供额外的空间. ××××××××××××××××××××××××××××××××××××××××××× 上面说的事呢 感觉还是不错的.于是乎开始测试. ×××××××××××××××××××××××××××× Q1:窗口的容器是个…
(阅读受众需有一定MFC知识储备.) (技术支持:http://www.cnblogs.com/shuhaoc/archive/2011/06/26/cdockableform.html) 在以往很多使用CCoolBar实现窗口停靠功能,但是在VS2010中编译CCoolBar的时候会出现很多错误,我的小白也不知道如何解决. 我看到在CSDN以及其他论坛都有人发帖询问如何解决CCoolBar在VS2010 中编译错误,但是始终没有人解答. 近日偶然搜到到CDockablePane可有类似的功能,…
VS2010 MFC中制作Visual Studio风格的停靠侧栏窗口(CDockablePane里嵌套FormView表单视图) 1. 在资源窗口里新建一个FormView的Dialog,修改ID为IDD_FORMVIEW.在此Dialog上点击右键添加类,建立一个基类为CFormView的类,这里取名为CMfcFormView.则生成了MfcFormView.h和MfcFormView.cpp文件. 2. 建立一个CDockablePane的派生类,予以容纳FormView,建立派生出的CD…
CWinAppEx类的LoadCustomState()和SaveCustomState()用于向注册表读取和保存应用程序的界面信息,重载该方法可以取消自动记忆界面布局. void CxxxApp::LoadCustomState() {     //设置为TRUE,则自动加载界面记忆     this->m_bSaveState = FALSE; } //保存界面状态值 void CxxxApp::SaveCustomState() {     //设置为TRUE,则自动保存界面记忆     …
1.DockPane是CFrameWndEx框架窗口的函数,不能用于基于对话框的应用程序,也不能用于老版本VC,只能用于基于单文档和多文档的应用程序. 2.最佳变通实现办法:创建CFormView基类的SDI单文档程序代替基于对话框的应用程序. 3.学习网址:http://blog.csdn.net/chenlycly/article/details/38964113 http://blog.csdn.net/pudongdong/article/details/53023174…
项目:         项目是构成某个程序的全部组件的容器,该程序可能是控制台程序.基于窗口的程序或某种别的程序.程序通常由一个或多个包含用户代码的源文件,可能还要加上包含其它辅助数据的文件组成.某个项目的所有文件都存储在相应的项目文件夹中,关于项目的详细信息存储在一个扩展名为.vcproj的xml文件中,该文件同样存储在相应的项目文件夹中.项目文件夹还包括其它文件夹,它们用来存储编译及链接项目时所产生的输出. 解决方案: 顾名思义,解决方案的含义是一种将所有程序和其它资源(它们是某个具体的数据…
跟上时代,用vs2010, 新建一个MFC应用程序Helloworld. 目录结构: 所有文件分为6个部分:解决方案相关文件.工程相关文件.应用程序头文件和源文件.资源文件.预编译头文件和编译链接生成文件.   1.解决方案相关文件 解决方案相关文件包括解决方案文件夹下的.sdf文件..sln文件..suo文件和ipch文件夹. .sdf文件和ipch目录一般占用空间比较大,几十兆甚至上百兆,与智能提示.错误提示.代码恢复和团队本地仓库等相关.如果你觉得不需要则可以设置不生成它们,方法是点击菜单…
VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)-软件开发-鸡啄米 http://www.jizhuomi.com/software/143.html   鸡啄米在上一讲中为大家演示了如何利用应用程序向导创建单文档应用程序框架.这一节将以上一讲中生成应用程序HelloWorld的文件结构为例,讲解VS2010应用程序工程中文件的组成结构.        用应用程序向导生成框架程序后,我们可以在之前设置的Location下看到以解决方案名命名的文件夹,此文件夹中包含了几…
如果已经以Debug方式编译链接过程序,则会在解决方案文件夹下和工程子文件夹下各有一个名为“Debug”的文件夹,而如果是Release方式编译则会有名为“Release”的文件夹.这两种编译方式将产生两种不同版本的可执行程序:Debug版本和Release版本.Debug版本的可执行文件中包含了用于调试的信息和代码,而Release版本则没有调试信息,不能进行调试,但可执行文件比较小. 将所有文件分为6个部分:解决方案相关文件.工程相关文件.应用程序头文件和源文件.资源文件.预编译头文件和编译…
本文阅读基础:有一定的C++基础知识(了解继承.回调函数),对MFC的消息机制有一定了解,对COM的基础知识有一定了解,对ActiveX控件有一定了解. 一. 前言 ActiveX控件和它的容器程序如何通讯是一个值得研究的问题,因为这涉及到ActiveX控件和它的容器程序如何交互的问题.VC知识库的杨老师写了一系列博客介绍了一些通讯方式.链接如下: COM 组件设计与应用(十三)--事件和通知(VC6.0) COM 组件设计与应用(十四)--事件和通知(vc.net) COM 组件设计与应用(十…
在GOPaint的设计研究过程中,我一直希望能够实现这样的结果(A B C 3个步骤) 在我之前的博客里面,曾经有过缩略图显示的现就(http://www.cnblogs.com/jsxyhelu/p/5493329.html   ),也应用到了实际的项目中.但是现在过了一段时间后回头再看,当时的实现放吧是粗糙的.基于MFC已经提供的基础库,通过c++自己的重载机制,应该能够得到精巧的实现,但是肯定需要去重写一些东西. 为了解决问题,达到效果,进行了一些研究.  一.CMFCShellList和…
MFC如何在树形图边上添加动态小地图 https://www.jianshu.com/p/7b1d828bf5db (简书无法识别缩进的...早知道先在博客园发了) (转载请注明出处) 作者:梦镜谷雨 萌新第一次写文章,请多多包涵.末尾附上相应代码(PS公司繁体系统所以部分注释繁体请别介意). 第一次接触MFC时做的一个小项目上有做个树形图边上带小地图的需求.(IDE:VS2010) 大四刚实习时写的,当时网上没找到现成的,打算记录下来也算篇技术谈不上的思路吧. 快2019了打算开始试着以后多记…
就是这几个x,关闭之后,再也显示不出来了: 原来,系统会默认记忆上次的状态,可以用函数来清除这个设置: 在MainFrame那个类中,CreateDocablePane之前,调用EnableLoadDockState(FALSE);即可. EnableLoadDockState(FALSE); m_wndRibbonBar.Create(this); m_wndRibbonBar.LoadFromResource(IDR_RIBBON); 另: 如果想去掉停靠窗口右上角关闭按钮,m_ourPan…
VS2010工程结构: 我们以在VS2010上利用MFC创建的单文档应用程序HelloWorld的文件结构为例,简述VS2010应用程序工程中文件的组成结构. 1.解决方案相关文件 解决方案相关文件包括解决方案文件夹下的.sdf文件..sln文件..suo文件和ipch文件夹. .sdf文件和ipch目录等浏览数据库与智能提示.错误提示.代码恢复和团队本地仓库等相关,支持智能浏览感知编辑.显示类视图等,一般占用空间比较大,几十兆甚至上百兆,不方便工程项目的打包备份.如果你觉得不需要则可以设置不生…
目录 ◆ 获取启动参数◆ 调整窗体大小◆ 关闭Dialog窗体◆ Dialog启动时指定控件为焦点◆ Dialog中禁止ESC回车关闭窗体◆ 回车后焦点自动跳到下一个控件◆ 窗体中某个控件捕获右键菜单◆ 获取指定窗体hWnd下的所有子窗体◆ MainFrame启动时居中◆ 非Dialog结构, 初始化时隐藏主窗口避免发生闪烁◆ 设置MainFrame标题栏, 不显示文档名称◆ CListCtrl 的使用1. Item失去焦点时也处于选中状态◆ CRichEditCtrl 的使用1. 设置字体格式…
VC++ 创建基于MFC的SDI应用程序,Visual Studio风格的主界面如下图所示,在该主界面上的视图菜单下包含有队对各个可停靠窗格显示或隐藏的控制菜单项.而基于Ribbon风格的应用程序,所以视图菜单下面的其他菜单都不显示了,只剩下了一个控制状态条显示或隐藏的CheckBox. 问题:MFC程序使用了Ribbon风格的,所以其他菜单都不显示了.有一个系统自动生成的停靠窗格,被该窗格不小心关掉后,再调试也显示不出来了.肿么办啊? 解答:消除停靠位置,存储记忆功能:在CMainFrame中…
今天照着孙鑫老师的VC++教程学习文件的操作,VS2010,单文档应用程序,项目文件命名为File,也就有了自动生成的CFileDoc.CFileView等类,一进去就编译运行(就是最初自动生成的项目),编译通过,可运行时直接弹出错误框,有点小懵,,,啥都没做就给我看这个: 图一   错误提示框 后来搜索一查,网上好多类似的错误以及解决方案,几乎都试了个遍,有: 方法(1)—重新生成解决方案,或者将项目文件目录下Debug文件夹删了,重新生成Release版: 方法(2)—可以先声明一个临时的C…
一.MFC编程入门教程之目录 第1部分:MFC编程入门教程之目录 1.MFC编程入门之前言  鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了.但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口.鸡啄米在这套VS2010/MFC编程入门教程中将会给大家讲解怎样使用VS2010进行可视化编程,也就是基于窗口的程序.        C++编程入门系列主要偏重于理论方面的知识,目的是让大家打好底子,练好内功,在使用VC++编程时不至…
转自:http://www.jizhuomi.com/software/143.html 用应用程序向导生成框架程序后,我们可以在之前设置的Location下看到以解决方案名命名的文件夹,此文件夹中包含了几个文件和一个以工程名命名的子文件夹,这个子文件夹中又包含了若干个文件和一个res文件夹,创建工程时的选项不同,工程文件夹下的文件可能也会有所不同. 如果已经以Debug方式编译链接过程序,则会在解决方案文件夹下和工程子文件夹下各有一个名为“Debug”的文件夹,而如果是Release方式编译则…