VC++60 第十六章 VC++开发工具和MFC基础类库(一)

VC++ MFC 经典教程 – 基础篇 1.CP_YourFirstWindowsProgram.wmv 2.Windows_编程模型.wmv 3.MFC_第一个MFC程序设计.wmv 4.MFC_消息映射.wmv 5.MFC_使用向导快速进行MFC程序设计.wmv 6.MFC_字符集和TEXT宏.wmv 7.MFC_建立应用程序.wmv 8.MFC_第一个MFC程序设计(不用向导).wmv 9.MFC_Windows_GDI_设备描述... 阅读详情

第十六章 VC++开发工具和MFC基础类库

 

Visual C++是Microsoft公司推出的支持面向对象的“Windows软件”开发环境(Developer Studio),本书的叙述依赖的是6.0版,现在的最新版本是统一的“.NET”版。MFC类库(Microsoft Foundation Class Library)是与 VC++开发系统相结合的基础类库。它封装了许多常用的类,这就为程序员提供创建各种常用控件及其它功能的简便方法,极大地简化了Windows桌面应用程序的开发过程。本书前十五章通过简单的实例程序介绍了常用控件的设计和使用方法,主要是基于对话框模式的应用程序的设计过程,也从中学到了Visual C++6.0软件的基本操作方法。本章的目的是把这些知识归纳和总结一下,巩固这些基本知识,为进一步的深入学习指明方向。

 

16.1 VC++60开发系统

 

1 应用程序向导和类向导

Visual C++6.0系统包含两个向导——应用程序向导和类向导,是程序员是优秀助手。AppWizard在创建 新程序时自动启动,它为用户自动生成了一个应用程序框架。在第一章中,我们介绍了创建基于对话框的应用程序时AppWizard各对话框的可选择内容,在第十四章中介绍了创建基于单文档模式的应用程序时对AppWizard对话框各步骤的应答方法。

打开第一章的HelloWin程序的工作区的Classview,您可以看到向导创建了四个类:CAboutDlg,CHelloWinApp,ChelloWinDlg和ChelloWinDlgAutoProxy。打开FileView可以查看源文件、头文件资源文件等,这些就是AppWizard自动生成的应用程序框架。

 VC++60 <wbr>第十六章 <wbr>VC++开发工具和MFC基础类库(一)  VC++60 <wbr>第十六章 <wbr>VC++开发工具和MFC基础类库(一)
                            chap16-01 -- chap16-02

打开类向导ClassWizard对话框,它有五页:

VC++60 <wbr>第十六章 <wbr>VC++开发工具和MFC基础类库(一)
 图chap16-03

1)消息映射 用于给对话框及其控件添加消息映射等,我们在前面已经多次用到。
2)成员变量 用于给对话框及其控件引进成员变量。
3)自动监控 用于接口的(intface)设计。
4)ActiveX事件 用于ActiveX控件的设计。
5)类信息   显示该类的有关信息。 图chap16-03就是这一页。

打开类向导的操作有两种方法,一是从“查看”菜单打开,二是从快捷菜单进入,用右键点击用户工作区即可。
添加消息映射的步骤是:1.打开类向导对话框;2.选择“消息映射”;3.选择某对话框类,选择一个控件的ID;4.选择一个该控件适用的命令或消息,点击“添加函数”按钮。
添加控件变量的步骤是:1.打开类向导对话框;2.选择“成员变量”页;3.选择某对话框类,选择一个控件的ID,点击“添加变量”;4.在打开的对话框中选择变量的类型,是控件变量还是数值变量,数值变量就有可能是字符串或整数等。

 

2 工作区

新建或打开就的工程文件后, VC++开发环境打开它的主窗口,右边是用户工作区就编辑区,左边是系统工作区简称工作区。工作区分三页——类视图、资源视图和文件视图。图01和图02分别是类视图和文件视图,下面的图04是资源视图。

VC++60 <wbr>第十六章 <wbr>VC++开发工具和MFC基础类库(一)
图chap16-04

类视图罗列了本工程中所用的类,从树性控件中展开一个类,就可以看到该类的所有函数和成员变量。要编辑或修改某个函数,只要双击该函数就行。在树上可以使用右建菜单。
资源视图罗列了本工程中所用的所有的资源,如对话框、图标、菜单、工具条和字符串表等。双击一对话框就打开该对话框的可视化设计窗口,双击其它也是同样的效果。
文件视图罗列了本工程中所用的文件,所有的类都有一个源文件和一个头文件,资源文件是以RC扩展名的。定义一个全局变量(而不是控件变量)需要在类的构造函数中进行,在就需要在文件视图打开头文件区编辑。

 

3 对话框的界面设计

双击资源视图中某对话框就可以打开该对话框的设计窗口,如果设计窗口没有关闭,还可以从“窗口”菜单中去切换它。向对话框添加控件,先在控件工具窗口中选定一控件,再在对话框中点击左键或拉一个矩形,后者的好处是同时确定控件的大小和位置。每一个控件 都需要设置属性,其中ID是最重要的,不要简单地用系统提供的缺省值,命名的规则是既要反映控件的功能,又要显示出它的类型,ID必须全部用大写。要设计控件属性用右键点击控件即可。

新浪网友:

"定义一个全局变量(而不是控件变量)需要在类的构造函数中进行"

这样说不是很正确吧,应该说定义为类的成员变量,在构造函数中赋初值

2009-4-11  01:32回复(0)

天涯比邻:

对! 定义类的成员变量,在构造函数中赋初值。

在构造函数中一定变量,那在构造函数外部就失效了。

2009-4-12  11:54

VC++ MFC类库中文手册实战指南 Microsoft Foundation Classes(MFC)是一套C++类库,为Windows应用程序提供了一个快速开发框架。本章将简要介绍MFC的来历、特点以及其对Windows编程产生的深远影响。CAPTION "我的对话框"FONT 8, "宋体"BEGINCONTROL "输入框",IDC_MYEDIT,EDIT,"",10,10,280,20CONTROL "按钮",IDC_MYBUTTON,BUTTON,"",110,50,50,25,BS_PUSHBUTTONEND。 阅读详情

相关推荐

基于VC++与MFC框架的弹球小游戏开发实战

Microsoft Foundation Classes(MFC)是对Windows API的C++封装,通过消息映射机制实现事件驱动编程。在弹球游戏中,CWinApp派生类管理程序生命周期,CFrameWnd创建主窗口,CView子类承载绘图与输入逻辑。private:// 私有构造函数public:// 重置所有状态private:获取实例的方式如下:// 添加新球// 遍历更新相比list或dequevector。

weixin_29885875的博客 748

MFC---MFC入门

微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC把Windows SDK API函数包装成了几百个类,MFC给Windows操作系统提供了面向对象的接口,支持可重用性、自包含性以及其他OPP原则。

Frank---7的博客 1168

VC++之MFC类库中文手册.rar

VC++之MFC类库中文手册,用于查询MFC中各类的对应关系以及使用方法

MFC 最详细入门教程

在我们使用任意一种方法添加了消息处理函数以后,都只能得到一个空的OnBnClickedAddButton()函数的函数体,要实现我们想要的功能,还需要在函数体中加入自定义功能代码。在加法计算器程序中,我们想要“计算”按钮实现的功能是,获取被加数和加数的数值,然后计算它们的和并显示到和的编辑框里。那么,OnBnClickedAddButton()的函数体就应修改为:// TODO: 在此添加控件通知处理程序代码// 将各控件中的数据保存到相应的变量。

szmtjs10的博客 1万+

VC++之MFC类库中文手册

VC++之MFC类库中文手册,十分好用的查询工具,

VC++MFC小游戏实例教程(实例)+MFC类库详解

VC++MFC小游戏实例教程(实例)+MFC类库详解 免费下载

深入浅出话VC++——MFC的本质

进入到WinMain函数,即_tWinMain函数,在该函数中调用了 AfxWinMain函数,后者获取子类(程序中指的CSDIMFCApp类)的指针,利用该指针调用InitInstance虚函数,根据多态原理,实 际调用的是子类CSDIMFCApp的InitInstance函数,子类CSDIMFCApp的InitInstance函数完成应用程序的一些初始化 工作,包括窗口类的注册、创建、窗口显示和更新。上面代码中是_tWinMain函数啊,并不是我要的WinMain函数的,难道是找错了吗?

wwq222的专栏 1521

VC 之MFC类库中文手册(一怀去意)

VC 之MFC类库中文手册(一怀去意)。《Microsoft Visual C++ 6.0 MFC类库参考手册》介绍了类、全局函数、全局变量和宏,它们共同组成了Microsoft 基本类库 6.0版。类层次图表详细说明了类库中类之间的关系。类库概述以对读者有帮助的方式列出了类。使用这些列表有助于读者找到一个包含有自己感兴趣的功能的类。

VC++动态链接库编程之MFC DLL

1.概论   先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL

MOKA 1万+

新版MQL语言程序设计:用vscode编写编译调试mt4和mt5程序

使用VScode搭建MT4与MT5开发环境,实现编辑编译调试统一。

超哥量化的博客 6872

区块链入门:用账本、乐高和三台旧电脑讲懂分布式账本

区块链是一种去中心化的分布式账本技术,其核心原理是通过密码学哈希、共识机制和链式结构实现数据不可篡改与多方共同验证。它不依赖单一中心,而是将交易记录同步复制到多个节点,依靠数学规则而非人工信任达成一致,从而在数字世界构建可验证的信用基础设施。这种‘集体见证’模式显著提升了系统抗单点故障与人为干预的能力,广泛应用于供应链溯源、数字身份、教育管理及公益透明等需强信任保障的场景。本文以账本类比、乐高拆解和Ganache实操为线索,面向零基础读者通俗解析哈希值、挖矿与智能合约等关键概念。

weixin_30517215的博客 274

VC++60 第十六章 VC++开发工具和MFC基础类库(四)

VC++60 第十六章 VC++开发工具和MFC基础类库(四)   16.4 MFC基础类库 Microsoft提供了一个基础类库MFC,其中包含用来开发C++和C++ Windows应用程序的一组类。基础类库的核心是以C++形式封装了大部分的Windows API。类库表示窗口、对话框、设备上下文、公共GDI对象如画笔、调色板、控制框和其他标准的Windows部件。这些类提供了

GL_a_的博客 497

自动化学报Ctex+texstudio配置方法

自动化学报Latex的模板win10使用方法(CTEX+texstudio)

zxy15924462502的博客 7371

VC++60 第十六章 VC++开发工具和MFC基础类库(二)

VC++60 第十六章 VC++开发工具和MFC基础类库(二) 16.2 MFC类库的基本控件 1 基本控件 基本控件是WINDOWS V3.1就开始使用的控件,也就是本书前面各章逐一介绍的那些控件。它们是最基本的最常用的,主要有按钮、静态正文、编辑框、单选按钮和复选框(英文名Check,有人翻译为检查框)、列表框、组合框、组框(Group)、垂直和水平的滚动条,它们大部分在图c

GL_a_的博客 776

Ubuntu 22.04 安装 IsaacLab 2.1.0

本文介绍了IsaacLab的完整安装流程:1)创建Python3.10虚拟环境;2)安装PyTorch2.5.1(CUDA11.8);3)升级pip并安装IsaacSim4.5.0;4)克隆IsaacLab仓库;5)运行安装脚本(需接受EULA)。若遇cmake缺失错误,需执行sudo apt安装。安装完成后可通过Ant-v0训练任务验证,成功运行后将显示IsaacSim窗口和训练完成提示。注意:IsaacSim不同版本可共存于不同环境。

weixin_47880303的博客 2223

PySpark机器学习生产化陷阱:跨节点依赖问题的7种解决方案

隐式依赖陷阱使用ldd解决方案:在基础镜像中预装和路径冲突终极解法依赖树瘦身技巧用conda-tree可减少40%环境体积PySpark机器学习生产化的核心矛盾在于分布式环境的确定性与灵活性不可兼得。轻量级方案(1-3)牺牲一致性换取灵活性重量级方案(4-6)牺牲灵活性换取确定性混合方案(7)针对特殊场景补充正如某AI平台架构师所言:“环境一致性不是技术问题,而是工程纪律问题选择适合团队当前阶段的方案,建立严格的依赖管理流程,才能让PySpark真正扛起生产环境的大旗。

datacanvas2426的博客 909

VC++ MFC 画图 详解(附源码)

(1)新建 MFC aplication exe 文件:painttool(2)在CPaintoo1View类的 OnDraw方法 添加如下代码:画图程序:Code: void CPaintoo1View::OnDraw(CDC* pDC)   {       CPaintoo1Doc* pDoc = GetDocument();  

jxusthusiwen的专栏 8225

ENS160传感器原理图设计,已量产(空气质量传感器)

ENS160 是一款集成式数字空气质量传感器,核心优势源于 “MEMS 传感元件 + 内置微处理器” 的架构。

不脱发的程序猿 569

如何用VC++60编写查看二进制文件程序

如何用VC++60编写查看二进制文件程序 雷霆工作室 韩燕 ---- 在计算机应用中,经常需要查看二进制文件的内容。目前,在各种VC++书籍中介绍查看文本文件的文章很多,但鲜有介绍查看二进制文件的文章。本文从功能设计、方案设计、编程实现以及技术要点等方面来简单介绍。 ---- 1 功能设计 ---- 显示界面见图1(略),将窗口客户区划分为三部分,左边列用于以16进制方式显示文

iBreathe的专栏 2034

Python爬虫实战:高德地图POI信息爬取(餐馆/加油站等),附选址分析技巧

高德API配置AMAP_KEY = "你的高德API Key" # 替换成自己的Key# 爬取参数CITY = "成都" # 城市DISTRICTS = ["锦江区"] # 区域,可添加多个(比如["锦江区", "武侯区"])KEYWORDS_LIST = ["川菜馆", "加油站"] # 要爬取的POI类型TYPES = {"川菜馆": "050101", # 餐饮服务→中餐→川菜馆(高德POI分类编码)"加油站": "110100" # 交通设施→加油站。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2469

华为面试手撕真题【字符串压缩】

华为面试手撕真题【字符串压缩】

MISAYAONE的博客 1万+

VC++60 第十六章 VC++开发工具和MFC基础类库(三)

VC++60 第十六章 VC++开发工具和MFC基础类库(三) 16.3 Windows应用程序的运行机制   1 Windows应用程序的特点 Windows编程与DOS环境下编程相比有很大的不同。Windows要求以一种全新的思维方式进行程序设计,Windows应用程序主要表现为以下四个特点: 1)事件驱动的程序设计    传统的MS-DOS程序主要采用顺序的、

GL_a_的博客 564

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

[转] 如何用VC++60编写查看二进制文件程序

如何用VC++60编写查看二进制文件程序 雷霆工作室 韩燕 [请作者提供详细的邮政地址给我们] ---- 在计算机应用中,经常需要查看二进制文件的内容。目前,在各种VC++书籍中介绍查看文本文件的文章很多,但鲜有介绍查看二进制文件的文章。本文从功能设计、方案设计、编程实现以及技术要点等方面来简单介绍。 ---- 1 功能设计 ---- 显示界面见图1(略),将窗口客户区划分为三

chentangjun的专栏 540

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

用VC++60 查看二进制文件

在计算机应用中,经常需要查看二进制文件的内容。目前,在各种VC ++书籍中介绍查看文本文件的文章很多,但鲜有介绍查看二进制文件的文章。本文从功能设计、方案设计、编程实现以及技术要点等方面来简单介绍如何用VC ++60 查看二进制文件。  一、功能设计  显示界面将窗口客户区划分为

fjclc2008的专栏 1114

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

使用VC++6.0 MFC OLE操作Excel 进行简单的读写

使用VC++6.0 MFC OLE操作Excel 进行简单的读写 使用VC60 MFC OLE操作Excel 进行简单的读写 - 简单的准备工作 - 所需求的类库 - 写入操作 -读取操作 -总结- 简单的准备工作首先保证VC++6.0在你的电脑上正确地安装,当然我们用Visual Stdio也是一样的。然后,我们需要创建一个工程: 简单设置之后,我们我们得到一个基于对话框的基本MFC程序。

llwodao的专栏 9013
上一篇: VC++60 第十五章 多文档界面的程序
下一篇: VC++60 第十六章 VC++开发工具和MFC基础类库(二)
GL_a_
博客等级 码龄11年 29粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值