MFC 多文档程序的基本编程

news2024/9/22 22:37:35

下载了一个openGL mfc的多文档程序,以此来学习mfc多文档模式的编程;

它每次新建一个文档,会在窗口绘制一个三角形、一个矩形;如果没有了图形刷新一下;

先看一下为什么每次打开新文档会绘制图形;

生成工程之后主要有5个类,比单文档程序多了一个子框架类;

 

可以打开多个窗口,View类只有一个;View类的OnDraw()函数是在窗口绘制内容;如果在View类的OnDraw()函数添加绘制代码,绘制的内容就会出现在每个打开的子窗口;

void COpenglMFCTestView::OnDraw(CDC* pDC)
{
	COpenglMFCTestDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	if (!pDoc)
		return;

	// TODO: 在此处为本机数据添加绘制代码
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);  

	// 我们绘制图像的代码就放在这里  

	//RenderScene();  
	DrawGLScene();

	glFinish();  

	SwapBuffers(m_pDC->GetSafeHdc());  

	pDC->TextOutA(20, 20, _T(

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

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

相关文章

微信小程序开发学习笔记——3.2page内的onload及data差值表达式

>>跟着b站up主“咸虾米_”学习微信小程序开发中,把学习记录存到这方便后续查找。 课程连接:https://www.bilibili.com/video/BV19G4y1K74d?p16&vd_source9b149469177ab5fdc47515e14cf3cf74 一、注册页面 https://developers.weixin.qq.com…

C#之WPF学习之路(2)

目录 控件的父类 DispatcherObject类 DependencyObject类 DependencyObject 类的关键成员和方法 Visual类 Visual 类的主要成员和方法 UIElement类 UIElement 类的主要成员和功能 FrameworkElement类 FrameworkElement 类的主要成员和功能 控件的父类 在 WPF (Windo…

idea 打不开项目 白屏

使用IDEA打开项目, 不知名原因崩溃了, 直接出现缩略图白屏。 解决过程: 尝试过重启IDEA,重启过电脑,重新引入相同项目(使用不同路径,存在缓存记录,依然打不开)&#xff…

亿道丨三防平板pad丨三防平板是指哪三防丨三防工业级平板电脑

三防工业级平板电脑成为许多行业中的重要工具。本文将介绍三防工业级平板电脑的特点以及其在各个领域中的广泛应用。 三防工业级平板电脑的特点 三防工业级平板电脑是指具备防水、防尘和防震功能的平板电脑。这些特点使得它们能够在恶劣环境中工作,如沙尘飞扬的工地…

easyexcel写入long类型数据精度丢失

1. 前言 在使用easyExcel导出Excel中 发现 long类型的数据格式精度丢失了 问题如下 尾数都成了00000 精度发生了丢失 2. 解决 将long类型的字段转成String 写入到Excel中增加解析器 LongStringConverter 例如 /*** 文件导出** param outputStream outputStream* param cla…

【Rust敲门砖】 Windows环境下配置及安装环境

一、安装C环境 rust底层是依赖C环境的连接器,所以需要先安装C/C编译环境, 有两种选择:安装微软的msvc或者安装mingw/cygwin。 如果使用msvc的Visual Studio,只需要安装好C/C编译环境,然后一路默认就行了,缺点是体积比较大,下载安…

外包干了3个月,技术退步明显

先说一下自己的情况,本科生,19年通过校招进入广州某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

深度学习神经网络实战:多层感知机,手写数字识别

目的 利用tensorflow.js训练模型,搭建神经网络模型,完成手写数字识别 设计 简单三层神经网络 输入层 28*28个神经原,代表每一张手写数字图片的灰度隐藏层 100个神经原输出层 -10个神经原,分别代表10个数字 代码 // 导入 Ten…

SQL Server —— While语句循环

一:简介 while 循环是有条件的循环控制语句。满足条件后,再执行循环体中的SQL语句。 while: break, 如果有多条语句可以在while后面添加begin-end。关于while的语法 while(条件) -- begin -- 语句1 -- 语句2 -- break 根据情况是否添加break -- end 二…

LeetCode LCR 055.二叉搜索树迭代器

实现一个二叉搜索树迭代器类BSTIterator ,表示一个按中序遍历二叉搜索树(BST)的迭代器: BSTIterator(TreeNode root) 初始化 BSTIterator 类的一个对象。BST 的根节点 root 会作为构造函数的一部分给出。指针应初始化为一个不存在…

音视频技术-声反馈啸叫的产生与消除

目录 1.均衡调节: 2.移频法: 3.移相法: 4.比较法: 在扩音系统中,产生啸叫危害很大,一方面影响会议、演出等活动的正常进行,另一方面严重的啸叫会导致音响设备的损坏。 “啸叫”是“声反馈”的俗称,形成的机制复杂,消除的手段多样,专业调音师也对

RSA之前端加密后端解密

RSA之前端加密后端解密 RSA加密解密方式有: (1)公钥加密,私钥解密; (2)私钥加密,公钥解密; 此文章中以下我使用的是前端公钥加密,后端私钥解密; …

Springboot集成Druid实现监控功能

Druid是阿里巴巴开发的号称为监控而生的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource等等等,秒杀一切。Druid可以很好的监控DB池连接和SQL的执行情况&#…

信息安全工程师 软考回顾(一)

🐳概述 图源:文心一言 信息安全证书已经考了一年有余,尽管我目前没有从业安全的打算,况且自己的实践能力与从业标准依然有所差距,但其中的内容也值得再温习一遍~🥝🥝 另外,如果你对…

妨碍有效沟通的5种认知谬误

在沟通过程中,某些认知谬误会让我们看不到真实的信息,做出错误的沟通行为,既伤害到自己和别人,又无法达成真正的沟通意图。本文介绍了5种认知谬误,如果在沟通过程中能够有效识别并克服这些谬误,就可以达成更…

【MySQL系列 03】事务隔离:为什么你改了我还看不见?

事务 今天的文章里,我会以 InnoDB 为例,剖析 MySQL 在事务支持方面的特定实现,并基于原理给出相应的实践建议,希望这些案例能加深你对 MySQL 事务原理的理解。 说到事务,银行应用是解释事务必要性的一个经典例子&…

STL - hash

1、unordered系列关联式容器 在C98中,STL提供了底层为红黑树结构的一系列关联式容器,在查询时效率可达到O(),即最差情况下需要比较红黑树的高度次,当树中的节点非常多时,查询效率也不理想。最好 的查询是,进…

Java面试题之分布式/微服务篇

经济依旧不景气啊,如此大环境下Java还是这么卷,又是一年一次的金三银四。 兄弟们,你准备好了吗?冲冲冲!欧里给! 分布式/微服务相关面试题解 题一:CAP理论,BASE理论题二:…

智慧餐饮系统架构的设计与实现

随着科技的不断发展,智慧餐饮系统在餐饮行业中扮演着越来越重要的角色。智慧餐饮系统整合了信息技术,以提高餐饮企业的管理效率、客户服务质量和市场竞争力。本文将探讨智慧餐饮系统架构的设计与实现,并探讨其在餐饮行业中的应用前景。 架构…

Spring框架@Autowired注解进行字段时,使用父类类型接收子类变量,可以注入成功吗?(@Autowired源码跟踪)

一、 前言 平常我们在使用spring框架开发项目过程中,会使用Autowired注解进行属性依赖注入,一般我们都是声明接口类型来接收接口实现变量,那么使用父类类型接收子类变量,可以注入成功吗?答案是肯定可以的!…