本文主要介绍如何是使用vc++创建MFC项目,并简单介绍整个项目的基本框架。文件–>新建,会弹出以下新建文件(项目)类型的界面,如下



按上图的步骤u,创建一个MFC工程。其中步骤3中的CardDevices是要我们输入的工程名。点击确定后,会弹出以下界面:



默认的是“多重文档”,这个地方我们改成基本对话框。后面的就选择默认。点击完成后,工程的创建已经完成。工程创建完成后会编辑器的现实如下:



其中图中1是默认创建的窗口。“2”是在窗口中默认添加的两个按钮,“3”是默认添加的文档对象,“4”是控件工具栏,我们可以选中其中的控件,然后往界面上拖放。“5”,“6”是我们的整个项目所有资源的菜单栏。其中左下角的“6”有三种选择显示方式:分别是代码目录,界面资源目录,整个工程的文件目录。如下图



“1”表示帮助界面,就是运行项目后,弹出一个主界面,点击左上角的图标,会弹出这个关于界面。“2”是整个程序的框架部分,“3”是整个工程的主界面相关类代码。“4”是关于界面的UI部分,“5”是主界面的UI。

其中“C工程名App”可以理解为整个应用程序的主体框架,由她去启动我们的主对话框“C工程名Dlg”。“CAboutDlg”是帮助对话框,运行程序后弹出主对话框,点击主对话框左上角小图标会弹出一个下拉菜单,点击“关于….”后弹出的对话框即是帮助对话框的内容。这里需要指出的是,MFC的编程惯例是类名都以C开头(ClassView视图查看类信息),而该类相关的头文件、源文件(FileView视图查看文件信息)文件名则以去掉C之后的部分命名。编译,运行后会弹出如下图的界面:



到这里我们已经成功地创建了要给工程。后面我们可以往界面上添加各种控件,并给按钮等控件添加响应事件。

MFC 创建新项目的更多相关文章

  1. 用Kotlin开发Android应用(II):创建新项目

    这是关于Kotlin的第二篇.各位高手发现问题,请继续“拍砖”. 原文标题:Kotlin for Android(II): Create a new project 原文链接:http://anton ...

  2. cocos2d-x3.2创建新项目失败的一种可能性(cygwin自带的python2.6被抢先执行)

    之前一直使用cocos2d-x2.2写游戏,写了几个游戏后,想尝试下3.x版本的新功能,就下载了cocos2d-x3.2版本. 参照官方文档的说法,cocos2d-x3.x版本需要python2.7环 ...

  3. AndroidStudio创建新项目报错

    创建新项目自动执行时报错: Failed to import new Gradle project: failed to find Build Tools revision 17.0.0 Consul ...

  4. cocos2dx 3.3创建新项目 和 VS2012解决方案加载失败问题

     首先创建新项目,步骤如下: 1.进入cocos2d-x-3.3\tools\cocos2d-console\bin目录,按住shift+鼠标右键 2.输入 cocos new 项目名 –p 包名 – ...

  5. What?VS2019创建新项目居然没有.NET Core3.0的模板?Bug?

    今天是个值得欢喜的日子,因为VS2019在今天正式发布了.作为微软粉,我已经用了一段时间的VS2019 RC版本了.但是,今天有很多小伙伴在我的<ASP.NET Core 3.0 上的gRPC服 ...

  6. android studio: 一个Android studio 3.3.2 无法创建新项目的问题

    记录一个AS无法创建新项目的问题. 今天想写一个测试Demo,点击上面的“Start a new Android Studio Project” ,填写完包名和项目路径后,点“Finish”, AS无 ...

  7. Android Studio开发第二篇创建新项目

    创建新项目很简单,File-New-New Project,这个没什么好说的跟Eclipse都差不都. 第二步SDK选择,有手机平板还有Wear,TV,汽车Auto,谷歌眼镜等几个种平台,这里就先选择 ...

  8. git 创建新项目,下载工程,合并和更新工程简单应用记录

    以前使用SVN很顺手,现在公司使用git来管理代码,因此学习git的基本使用. 一.首先介绍下SVN和git的简单比较: SVN是使用得最多的版本控制管理工具. 1.是一个集中式的版本管理工具.所有的 ...

  9. Django 创建新项目后要完成的几个步骤

    首先,在过一遍创建新项目的步骤: -创建一个新项目 -建了数据库后要确定自己是用 mysql数据库  还是用 sqlite3数据库 -如果是mysql数据库,那一堆配置 -如果是sqlite3数据库, ...

随机推荐

  1. HDU 5353 Average

    Problem Description There are n soda sitting around a round table. soda are numbered from 1 to n and ...

  2. Spring整合Shiro从源代码探究机制

    首先从例如以下配置開始说起 ShiroDbFilterFactoryBean继承了ShiroFilterFactoryBean这个由jar提供的bean类, 而且它实现了InitializingBea ...

  3. 【App 开发框架 - App Framework】

    http://edm.mcake.com/mark/jqmboi/#plugins 官网:http://app-framework-software.intel.com/index.php 官方API ...

  4. 【转】Android 服务器之SFTP服务器上传下载功能 -- 不错

    原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...

  5. Angular4集成ng2-file-upload

      在Github上找到了一个支持Angular4好用的文件上传组件ng2-file-upload,这里简单介绍一下这个库的集成使用方案.  本文基于该组件的1.2.1版. 1. 安装 安装非常简单, ...

  6. POJ 2155 Matrix【 二维树状数组 】

    题意:给出两种操作,C是给出一个矩形的左上角和左下角的下标,把这个矩形里面的0变成1,1变成0,Q是询问某个点的值 看这篇论文讲得很清楚 http://wenku.baidu.com/view/1e5 ...

  7. QNX多线程同步之Barrier(屏障)

    之前和大家介绍过QNX上的线程同步方法metux和semophore,通过这两种方法可以对一个或者几个资源进行加锁,避免资源使用上的冲突.在另一种情况下,某个线程需要在其它线程完成工作后才继续执行,这 ...

  8. input[type="file"]的图片预览

    在项目中遇到用input标签file类型的文件上传,想实在上传之前进行图片的预览功能:之前的做的一个解决方案是文件先上传上去然后返回地址再显示在页面上,这样就不太好,因为用户基本信息可能并没有保存,但 ...

  9. 路飞学城-Python开发-第三章

    # 数据结构: # goods = [ # {"name": "电脑", "price": 1999}, # {"name&quo ...

  10. js对象追加到数组里

    描述:将一个点击事件得到的对象追加到数组里 做法:全局声明一个数组,,在对象的点击事件里将得到的对象追加到数组 change(a){ arr.push(a) console.log(arr) var ...