使用Visual Studio 2013编写Windows程序

Visual Studio采用可视化编程的方式,编写应用程序。仅通过直观的操作就能完成界面的设计工作。比如,我们在界面上添加一个按钮,那么添加按钮这个过程是通过图形化界面操作的。但是该按钮实现的功能还是需要我们编程,通过代码实现的。

Windows应用程序

我们先了解一下Windows应用程序运行的机制:

API函数:API是一些预先定义的函数,为应用程序提供Windows系统特殊函数及数据结构,Windows应用程序可以利用API函数调用系统功能;是Windows系统与Windows应用程序间的标准程序接口;

MFC:微软基础类库,是一个微软公司提供的类库,以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。

利用API函数编写应用程序,必须首先了解以下内容:

  1. 窗口的概念:系统管理、应用程序的基本单位;应用程序与用户之间交互的接口环境;Windows应用程序的基本操作单元。编写一个Windows应用程序首先应该创建一个或多个 窗口,随后应用程序的运行过程即是窗口内部、窗口与窗口之间、窗口与系统之间进行数据交换的过程。
  2. 事件驱动的概念:所谓事件驱动,简单地说就是点击什么对象(即产生什么事件)电脑就执行什么操作(即调用什么函数)。Windows程序设计是针对事件驱动进行的,事件驱动是对事件消息的描述。Windows程序的执行顺序取决于事件的发生顺序,程序的执行顺序是由顺序产生的消息驱动的,但是消息的产生往往并不要求有次序之分。
  3. 句柄的概念:句柄是一个8字节长(相对64位操作系统)的数值,用于标识应用程序中不同的对象和同类对象中不同的实例。应用程序通过句柄访问相应的对象信息。
  4. 消息的概念:Windows应用程序利用Windows消息(Message)与应用程序及系统进行信息交换。消息包含三部分内容:消息号(由事先定义好的消息名标识)、字参数(用于提供消息的附加信息)、长字参数(用于提供消息的附加信息)。在Windows中消息用结构体MSG表示。

一个完整的Windows应用程序通常由五种类型的文件组成:源程序文件,头文件,模块定义文件,资源描述文件,项目文件。源程序至少由两部分组成:入口函数(WinMain)和窗口函数(WndProc)。入口函数是所有程序的入口,类似main函数。完成定义和初始化,产生消息循环。窗口函数完成消息循环的响应。

WinMain函数:

  1. 注册窗口类,建立窗口及执行必要的初始化
  2. 进入消息循环,据接受的消息调用相应的处理过程
  3. 当消息循环检索到WM_QUIT时终止程序运行

在这里插入图片描述
WinProc函数:
在这里插入图片描述

实战——创建空白的Windows窗口程序(应用程序框架)

在这里插入图片描述在这里插入图片描述
请添加图片描述
在这里插入图片描述
请添加图片描述

首先打开Visual Studio 2013 选择“新建项目”—>“空项目”—>修改项目名称和存储位置
在这里插入图片描述
在解决方案里,选择源文件,添加新建项
在这里插入图片描述
选择C++文件,修改文件名称
在这里插入图片描述
然后可以将以上示例程序填写进去
在这里插入图片描述
生成应用程序
在这里插入图片描述
运行
在这里插入图片描述
在这里插入图片描述
也可以在第一步不选择“空项目”,选择“Win32项目”,这样它会自动生成以上我们输入的空白窗口应用程序代码。我们可以直接在此基础上开发应用程序。

基于MFC开发Windows应用程序

MFC:微软基础类库,是一个微软公司提供的类库,以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。
请添加图片描述
请添加图片描述

1. 程序界面中添加控件的方法:

使用可视化工具在基于对话框的应用程序中添加控件。一般来讲,控件都是出现在对话框中,因此可使用可视化工具在对话框中完成对控件的添加。并使用布局工具对控件的尺寸位置进行调整。

控件接受的消息主要有单击、双击和字符输入等。

我们在新建项目时,选择新建“MFC应用程序”,项目打开后,就会出现图形化窗口界面,我们可以直接在这个图形化界面上添加控件。
在这里插入图片描述
可以通过“工具箱”添加控件,每个控件可通过“属性栏”修改其属性。通过下一节可以看到控件最重要的属性就是其ID,在代码中我们是通过其ID操作该控件的。

2. 为控件添加消息映射

请添加图片描述
我们来看一下在Visual Studio 2013中的实际操作。

右键单击控件,选择“添加事件处理程序”
在这里插入图片描述
点击“添加编辑”后,将自动跳转到代码界面,以上的1,2两步都已自动完成,我们只需在消息处理函数中添加函数体即可。
在这里插入图片描述
对于“编辑框”这类控件,除了要关注其ID值外,由于其本身是带有数据属性的(我们需要读取或写入编辑框中的数据),所以需要为编辑框控件定义变量。

同样,右键单击控件,选择“添加变量”
请添加图片描述
单击完成后,该变量的定义等代码也会自动添加到代码文件中,我们可以直接使用该变量。

  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值