首先我们把题目所示的要求分为两个问题:

问题一:如何给基于MFC的单文档视图类里面添加 控件。就是那种类似工具箱里面的控件。

问题二:如何给已经添加的控件 定义一些消息的响应函数。

××××××××××××××××××××××××××××××××××××××××××××××

前言: 如果是给对话框添加一个控件 ,然后给这个控件添加消息响应函数是非常简单。IDE有一整套向导可以帮助我们干这个事情。

但是如果是直接给视图类添加控件 似乎就比较困难了。

但是很多牛X的人看到框架类可以像一个箩筐丝的把  菜单栏,状态栏,工具栏,还有视图类的实例化对象等等装入到自己的框架里面。

为啥就不可以让视图类的实例化对象也变成一个箩筐,往里面塞一些东西? 答案是可以的。理论上讲可以往视图类里面塞任何窗口。

此处举一个例子说明下,这个例子是往视图类里面塞进去一个按钮窗口。

参考的资料是:

http://blog.csdn.net/chao360559040/article/details/5886219

http://blog.sina.com.cn/s/blog_93491c750101b6qa.html

http://www.cnitblog.com/buf/archive/2008/12/16/42270.html

具体步骤是:

A:在视图类的头文件里面添加一个按钮类的实例化对象,这个对象作为视图类的成员变量。

B:重写视图类的OnCreate函数

int CTestGszView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -)
return -; // TODO: 在此添加您专用的创建代码
m_TestButton.Create(
"一个按钮",//按钮的标题 相当于属性里面的Caption
WS_VISIBLE|WS_CHILD|WS_BORDER,//按钮的风格
CRect(,,,),//按钮所在的位置和大小
this,//父窗口指针
0x1001//控件的ID
);
m_TestButton.ShowWindow(SW_SHOWNORMAL);//显示出来 return ;
}

运行效果:

关于在MFC的视图类里面添加各种控件 以及给这些控件添加对用的函数。2015-03-24 13:46:00的更多相关文章

  1. 高级列表控件ListCtrl关联的MFC中的类:CListCtrl

    高级列表控件ListCtrl关联的MFC中的类:CListCtrl■ 报表样式ListCtrl常用操作:1.添加列标题头:InsertColumn2.获取与设置列宽:GetColumnWidth.Se ...

  2. django class类即视图类添加装饰器的几种方法

    根据别人发布整理,个人爱好收集(原文:https://blog.csdn.net/mydistance/article/details/83958655 ) 第一种:定义函数装饰器,在函数,类中使用函 ...

  3. MFC中对话框类(Dialog)的应用

    转载http://hi.baidu.com/jackywdx/item/feee8041d2c2e12310ee1e85 Windows应用程序通常是通过对话框接收用户输入.向用户输出信息,本节介绍应 ...

  4. MFC修改视图CView的背景颜色

    (1) 在CYournameView(就是你的视图类,以下以CDrawLineView为例)添加了一个背景颜色变量 COLORREF m_bgcolor; (2)修改这个函数: BOOL CDrawL ...

  5. Cocoa编程中视图控制器与视图类详解

    iPhone编程规则是:一个窗口,多个视图.UIView是iPhone屏幕上很多控件的基础类.每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView ...

  6. iOS CoCoa编程中视图控制器与视图类(转)

    分类: iPhone2012-05-28 11:19 837人阅读 评论(0) 收藏 举报 cocoa编程iosuinavigationcontrolleruiviewiphone iPhone编程规 ...

  7. WorldWind源码剖析系列:插件列表视图类PluginListView和插件列表视图项类PluginListItem

    WorldWind中的插件类是个庞大的类,可以说从软件设计层面上统筹可扩展的插件体系的设计思想是WorldWind中的精华,值得学习和借鉴.插件体系中的所用到的类可以分为两大类,一类是插件类Plugi ...

  8. 列表控件ListBox关联的MFC中的类:CListBox

    列表控件ListBox关联的MFC中的类:CListBox ######################################################## 1.在列表的结尾添加一项: ...

  9. drf04 drf视图类

    REST framework 提供了众多的通用视图基类与扩展类,以简化视图的编写. 1.2个视图基类 1.1. APIView rest_framework.views.APIView APIView ...

随机推荐

  1. Differential Geometry之第十章极小曲面

    第十章.极小曲面 1.极小图 Animation showing the deformation of a helicoid into a catenoid. Animation of Scherk' ...

  2. 【BZOJ】1631: [Usaco2007 Feb]Cow Party(dijkstra)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1631 看到m<=100000果断用dij(可是好像dij比spfa还慢了在这里?)//upd: ...

  3. Mac OSX使用 XAMPP path 下的php

    修改-/.bash_profile文件或.zshrc文件 export XAMPP_HOME=/Applications/XAMPP export PATH=${XAMPP_HOME}/bin:${P ...

  4. jquery ajax生成Select

    function DropDownList(url, domId, defaultValue) {    /// <summary>    /// ajax生成select    /// ...

  5. js 文件上传进度条

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. C++ 智能指针学习

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  7. hdu 4722(记忆化搜索)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4722 思路:简单的记忆化搜索,留意一下A==0时的情况就可以了. #include<iostre ...

  8. SSM框架---搭建

    SSM框架简介 SSM框架,是spring + spring MVC + MyBatis的缩写,这个是继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级应用系统. Spr ...

  9. [算法][LeetCode]Search a 2D Matrix——二维数组的二分查找

    题目要求 Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the ...

  10. C#批量入库

    public static void BulkCopyToDB(DataTable dt, string conn, string tableName, out string msg) { msg = ...