c语言gui知识
文章目录
c语言gui知识
c语言gui界面编程学习
1. Windows程序简介:
实际上Vindows系统大家应该再熟悉不过了,Vindows程序呢也主要分那么几种,例如:eXe的可执行程序,dl的动态链 接库程序,b的静态库程序,SyS的驱动类型程序等等。这些都可以用VC++来开发。 EX类的程序从操作界面的使用角度来说又分成两种: 第一种就是我们之前一直使用的黑窗口的控制台下的程序,这种程序一般没有什么界面,都是使用命令行进行操作,比如: ipconfig、ping之类的。使用系统提供的cmd控制台进行加载。入口点函数是main. 第二种就是我们接下来要讲解的非控制台类型的程序,这种程序可以有界面,也可以没有界面。想要界面就调用创建窗口的 ==API函数== 去创建个界面出来,不想要界面呢不创建就可以了。所以呢比较灵活。入口点函数是WinMain。
2. windows编程开发相关概念:
Windows API:Windows操作系统应用程序接口(Windows API),有非正式的简称法为WinAPI,是微软对于 Vindows操作系统中可用的核心应用程序编程接口的称法。它被设计为各种语言的程序调用,也是应用软件与Windows系 统最直接的交互方式。大多数驱动程序需要对Windows系统更底层次访问接口,由所用版本的Windows的Native APL来提 供接口。 Windows有一个软件开发包(SDK,software development kit)提供相应的文档和工具,以使程序员开发使用Windows API的软件和利用Windowsj技术。 说了这么多,对于新手来说可能还是不太理解,我用通俗一点的话来解释下! 有人会问了我都学完了C++,难道还不能编写Windows:系统下的应用程序吗?我还得学其他的东西吗?答案是:能,但是 只能编写一些简单的控制台下的黑窗口程序。或者说只能调用C++基本语言内部的函数。 如果你要创建一个窗口,如果你要创建一个按钮,如果你要创建一个菜单,如果你要创建一个进程,如果你要做一个带界面 的任务管理器,以上这些单纯使用C++语言能做到吗?答案是:肯定做不到了。
GDI 的概念
GDI:Graphics Device Interface,即图形设备接口,是Windows API的一个重要组成部分。它是Windows图形显示程序与实际物理设备之间的桥梁,GDI使得用户无需关心具体设备的细节,而只需在一个虚拟的环境(即逻辑设备)中进行操作。
gui框架使用
[[post/14.新语言学习记录/语言技术/cpp/easyx框架学习/easyx框架学习#easyx框架学习| easyx框架笔记]] [[post/14.新语言学习记录/语言技术/cpp/qt软件开发/_index | qt框架使用笔记]]
mfc学习资料
个人总结
vs 编辑器 mfc 目录理解
目录 | 用途 |
---|---|
源文件 | 代码文件 |
资源文件 | 用于管理图片,ui等资源文件 |
.rc目录 | 用来存放一些窗口 ui文件的文件夹 |
工具箱 | 通过这个面板可以拖拽控件到页面,用来绘制页面 |
String Table | 在这里可以看到很多定义的字符串常量 |
经验
- 以 Afx开头的确定为 MFC库中的全局函数
- 以
::
开头的确定为 win32的 api函数
- 单文档视图架构程序
- CWinApp 负责管理应用程序流程
- CFrameWnd - 框架窗口类,负责管理框架窗口
- CView -视图窗口类,负责显示数据
- CDocument -文档类,负责管理数据
- 多文档视图架构程序
- CWinApp 引用程序类
- CMDIFrameWnd,多文档主框架窗口类
- CMDIChildWnd ,多文档子框架窗口类
- CView -视图窗口类,显示数据
- CDocument, 文档类,管理数据
- 对话框应用程序
- CWinApp - 应用程序类
- CDialog- 对话框窗口类
写代码
设置开发环境
先 visual studio installers 安装 MFC的单个组件,才能有创建 MFC的选项
选项中要进行 设置
设置 Use of MFC
选项使用 Use MFC in a Static Library
用于静态导入
- 头文件为
<afxwin.h>
- setting 当中设置使用MFC库
|
|
vs断点快捷键
快捷键 | 解释 |
---|---|
f9 | 断点 |
f10 | 进入下一行 step over |
f11 | 进入函数调用 step into |
入口函数
和 win32的不同, 我们在mfc找不到入口函数,因为 mfc 把入口函数给封装了。MFC 来安排程序的流程。
安装 json库
安装 vcpkg
|
|
文章作者 lyr
上次更新 2022-05-04