MFC学习日记(一)——创建新项目

news2024/9/22 5:30:02

此系列所有文章参考链接:http://www.jizhuomi.com/software/141.html

点击file新建项目创建一个MFC新项目
在这里插入图片描述
点击确定
在这里插入图片描述
点击下一步
在这里插入图片描述

  • 选择应用程序类型
    我们看到有四种类型:Single document(单文档)、Multiple documents(多文档)、Dialog based(基于对话框)和Multiple top-level documents。我们选择Single document类型,以生成一个单文档应用程序框架。单文档应用程序运行时是一个单窗口界面。
  • 选择项目类型
    我们选择默认的“Visual Studio”风格。
  • 选择MFC的使用方式
    • 在共享DLL中使用MFC:
      选择此种方式时MFC的类会以动态链接库的方式访问,所以我们的应用程序本身就会小些,但是发布应用程序时必须同时添加必要的动态链接库,以便在没有安装VS的机器上能够正常运行运行工程。
    • 在静态库中使用MFC
      选择此种方式时MFC的类会编译到可执行文件中,所以应用程序的可执行文件要比上种方式大,但可以单独发布,不需另加包含MFC类的库。这里我们使用默认的Use MFC in a shared DLL。

点击下一步
在这里插入图片描述
可以通过它向应用程序加入OLE支持,指定OLE选项的复合文档类型。本例不需要OLE特性,使用默认值无,点击下一步
在这里插入图片描述
文件扩展名可以设置程序能处理的文件的扩展名。对话框其他选项还可以更改程序窗口的标题。我们都使用默认设置,点击下一步。

在这里插入图片描述

  • 无:忽略所有的数据库支持;

  • 仅头文件:只包含定义了数据库类的头文件,但不生成对应特定表的数据库类或视图类;

  • 不提供文件支持的数据库视图:创建对应指定表的一个数据库类和一个视图类,不附加标准文件支持;

  • 提供文件支持的数据库视图:创建对应指定表的一个数据库类和一个视图类,并附加标准文件支持;
    当前例子选择无,不适用数据库特性,点击下一步
    在这里插入图片描述
    当前对话框为用户界面功能对话框。我们可以设置有无最大化按钮,最小化按钮、系统菜单和初始状态栏等。还可以选择使用菜单栏和工具栏生成简单的应用程序还是使用ribbon。这里我们都选择默认设置,点击下一步。
    在这里插入图片描述
    此时弹出“高级功能”对话框。可以设置的高级特性包括有无打印和打印预览等。在“最近文件列表上的文件数”项可以设置在程序界面的文件菜单下面最近打开文件的个数。我们仍使用默认值。点下一步按钮。
    在这里插入图片描述
    弹出“生成的类”对话框。在对话框上部“生成的类”列表框内,列出了将要生成的5个类:一个视图类(ClearnTestView)、一个应用类(CLearnTestApp)、一个文档类(CLearnDoc)和一个主框架窗口类(CMainFrame)和一个子框架窗口类(CChildFrame)。在对话框下面的几个编辑框中,可以修改默认的类名、类的头文件名和源文件名。对于视图类,还可以修改其基类名称,默认的基类是CView,还有其他几个基类可以选择。这里我们还是使用默认设置,点击完成按钮。

    应用程序向导最后为我们生成了应用程序框架,并在Solution Explorer中自动打开了解决方案
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/b521f6ccf63a48e0a6c93e3ac961a4aa.png)
    

编译运行的程序

ctrl+f5
在这里插入图片描述
点击是,VS2012会自动编译链接运行LearnTest程序,结果页面如下图所示。
在这里插入图片描述
终于看见界面了,接下来会继续学习各种界面和控件的使用方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/733064.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

传统图像处理之目标检测——人脸识别

代码实战:人脸识别 import numpy as np import cv2 img cv2.imread("3.webp")face_cascade cv2.CascadeClassifier(r./haarcascade_frontalface_default.xml)gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)#探测图片中的人脸 faces face_cascade.detec…

Android kotlin 实现把多个控件整体上下拉回弹功能(添加是否禁用顶部和底部回弹的参数设置,以及回弹效果结束监听)

目录 一、实现效果二、源码1、上下拉回弹,自定义ScrollView2、主activity一、实现效果 二、源码 1、上下拉回弹,自定义ScrollView 上下拉回弹,自定义ScrollView,ReboundScrollView.kt package com.example.myapplication3.myviewimport android.content.Context import

Netty核心技术九--TCP 粘包和拆包及解决方案

1. TCP 粘包和拆包基本介绍 **TCP是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有一一成对的socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方&#x…

OpenCV 入门教程:图像的基本操作和处理

OpenCV 入门教程:图像的基本操作和处理 导语一、图像的基本操作1.1 获取图像的大小1.2 访问图像的像素1.3 修改图像的像素值 二、图像的基本处理2.1 图像的灰度化2.2 图像的平滑处理2.3 图像的边缘检测 总结 导语 在计算机视觉和图像处理领域,对图像进行…

Spring Boot 中的 CompletableFuture 类是什么,如何使用?

Spring Boot 中的 CompletableFuture 类是什么,如何使用? 介绍 在开发企业级应用程序时,我们经常需要异步执行任务。异步执行任务可以提高应用程序的性能和响应能力。在 Java 8 中,引入了 CompletableFuture 类,它提…

zabbix 监控 windows 系统、java应用、SNMP

目录 一、部署 zabbix 监控 windows系统 1.下载 Windows 客户端 Zabbix agent 2 2.安装客户端,在监控的windows主机上配置 3.在服务端 Web 页面添加主机,关联模板 二、部署 zabbix 监控 Java应用 1.客户端开启 java jmxremote 远程监控功能 1.1配置…

finalshell上传文件到虚拟机一直失败

目录 1.首先看一下你的虚拟机的可用空间是否足够 2.查看是否是root用户 1.首先看一下你的虚拟机的可用空间是否足够 在finalshell查看即可 如果空间不够则将虚拟机关机 ,右键虚拟机找到设置,找到硬盘 (我这里演示的是VMwareFusion&#xff…

Linux--冯诺依曼体系结构

【Linux】冯诺依曼体系结构、操作系统及进程概念_linux io 冯诺依曼_平凡的人1的博客-CSDN博客 存储器指的是内存还是磁盘? 内存 输入设备:键盘、摄像头、话筒、磁盘、网卡... 输出设备:显示器、音响、磁盘、网卡... CPU: 运算器&#x…

Jetpack compose——深入了解Diffing

Diffing是什么 "Diffing" 是 Jetpack Compose 中用于优化性能的一种技术。它的工作原理是比较新旧 UI 树,并只更新实际发生变化的部分。这意味着即使你的应用有大量的 UI,Compose 也能保持高效的性能。 当 Composable 函数被重新调用&#x…

医学图像增强系统的设计_kaic

目录 1绪论 1.1课题背景 1.2医学图像增强以及相关理论的现状2 1.3本文内容安排 2图像增强技术 2.1空域增强方法 2.1.1空域点运算增强方法 2.1.2空域滤波增强方法 2.2频域增强算法 2.2.1低通滤波 2.2.2高通滤波 2.2.3同态滤波 2.3本章小结 3医学图像增强算法 3.1医学图像的特点 …

Unity跑酷小游戏-警察捉小偷

Unity跑酷小游戏-警察捉小偷 WRPUltimate3DEndlessRunnerKit2017 采用Unity2017版本运行 NGUI版本较旧,需要更新NGUI的版本或者换成UGUI Assets/NGUI/Scripts/UI/UIAnchor.cs(73,53): error CS0619: UnityEngine.RuntimePlatform.WindowsWebPlayer is obsolete:…

【观察】新五丰联合华为“躬身实践”,推动猪场实现智慧化跨越升级

中国是全球的生猪生产和消费大国,生猪存栏量、出栏量以及猪肉产量均居世界第一。不仅如此,我国的人口数量和饮食结构还决定了猪肉在国内肉类消费中具有“不可撼动”的地位,可以说猪肉的供应与国计民生息息相关。 数据显示,2022年中…

MySQL外键约束使用案例

MySQL外键约束使用 语法:FOREIGN KEY (外键列名)REFERENCES 主表(参照列)案例 创建课程表和班级表 创建学生表

Linux —— Gitee

目录 一,介绍 二,使用 一,介绍 用于代码托管、版本控制、多人协助等; Gitee是开源中国(OSChina)推出的基于Git的代码托管服务;深圳市奥思网络科技有限公司; 二,使用 网…

tidb之旅——资源管控

作者: 有猫万事足 原文来源: https://tidb.net/blog/26695303 前言 在我的设想里面,我应该不会这么早用到这个特性,原因很简单,整个TiDB集群根本不涉及多租户的使用场景。 应该说目前TiDB集群中的用户就2个&#x…

Mobaxterm远程桌面连接Linux

有很多远程桌面软件,如FastX,MSTSC,还有通过VNC、RDP协议走的。Mobaxterm作为极其优秀的软件,也可以这么干。但不知道为什么,总是设置不好(可能是linux服务器端没设置好)。下面记载一种方法&…

百度网盘删除“我的应用数据”文件夹

方法一:电脑端 工具链接, BaiduPCS-Go-3.6.8-windows-86.zip - 蓝奏云 电脑端下载解压运行,弹出浏览器窗口和命令行,在浏览器中输入百度网盘账号密码,登录。 之后会需要输入验证码,之后使用手机号或者邮…

Mysql查询

Mysql查询 一.DQL基础查询1.语法2.特点3.查询结果处理 二.单行函数(1)字符函数(2)逻辑处理(3)数学函数(4)日期函数 三.分组函数四.条件查询五.比较六.模糊查询七.UNION和UNION ALL(1)UNION(2)UNION ALL 八.排序九.数量限制十.分组查询 一.DQL基础查询 DQL(Data Que…

【Java遇错】Error: failed to initialize Sentinel CommandCenterLog

问题描述: 引入sentinel的相关依赖之后,启动项目服务,发现如下错误 Error: failed to initialize Sentinel CommandCenterLog java.lang.NoClassDefFoundError: com/alibaba/csp/sentinel/log/LoggerSpiProviderat com.alibaba.csp.sentin…

【openGauss数据库】--运维指南04--数据导入

【openGauss数据库】--运维指南04--数据导入 🔻 一、openGauss导入数据🔰 1.1 概述🔰 1.2 INSERT语句写入数据🔰 1.3 gsql元命令导入数据🔰 1.4 使用gs_restore命令、gsql命令导入数据(主要) &a…