单文档切换OpenGL视图
1.新建一个是继承CView的新类CViewSecond
2.menu中建两个菜单,在mainframe中添加对应的消息响应OnDataView,On3dView
mainframe中添加成员变量m_curView;下面代码中ShowWindow(SW_SHOWMAXIMIZED),参数一定是最大化的参数啊,千万别写SW_SHOW,debug好大会儿,发现参数为SW_SHOW的时候视图rect为0啊,0啊。。。。只有移动窗口的时候才显示opengl,发现,ondraw函数死活不被调用,然后消息响应onpaint添加ondraw也不行。。。 最后试试试试 。。。参数的问题。。。。。残念啊。。。
1 void CMainFrame::On3dView() 2 { 3 // TODO: 在此添加命令处理程序代码 4 if (m_curView == ID_3D_VIEW) 5 { 6 return; 7 } 8 CView* pOldActiveView = GetActiveView(); 9 CRuntimeClass* pNewViewClass; 10 pNewViewClass = RUNTIME_CLASS(CViewSecond); 11 CCreateContext context; 12 context.m_pNewViewClass = pNewViewClass; 13 context.m_pCurrentDoc = GetActiveDocument(); 14 CView* pNewView = STATIC_DOWNCAST(CView, CreateView(&context)); 15 if (pNewView != NULL) 16 { 17 pNewView->ShowWindow(SW_SHOWMAXIMIZED); 18 pNewView->OnInitialUpdate(); 19 SetActiveView(pNewView); 20 RecalcLayout(TRUE); 21 m_curView = ID_3D_VIEW; 22 pOldActiveView->DestroyWindow(); 23 } 24 25 26 } 27 28 void CMainFrame::OnDataView() 29 { 30 // TODO: 在此添加命令处理程序代码 31 if (m_curView == ID_DATA_VIEW) 32 { 33 return; 34 } 35 CView* pOldActiveView = GetActiveView(); 36 CRuntimeClass* pNewViewClass; 37 pNewViewClass = RUNTIME_CLASS(CDocView); 38 CCreateContext context; 39 context.m_pNewViewClass = pNewViewClass; 40 context.m_pCurrentDoc = GetActiveDocument(); 41 CView* pNewView = STATIC_DOWNCAST(CView, CreateView(&context)); 42 if (pNewView != NULL) 43 { 44 pNewView->ShowWindow(SW_SHOWMAXIMIZED); 45 pNewView->OnInitialUpdate(); 46 SetActiveView(pNewView); 47 RecalcLayout(); 48 m_curView = ID_DATA_VIEW; 49 pOldActiveView->DestroyWindow(); 50 } 51 52 }
3.CViewSecond中添加相应的初始化OpenGL的各种东西,OK。。。。
转载于:https://www.cnblogs.com/AZ-ZK/p/4222441.html
单文档切换OpenGL视图相关推荐
- C++--在单文档的应用程序增加多个视图
在mfc的单文档的应用程序(Application)设计时,一般是一种文档(Documnet)对应一种视图(View) .然而在有些时候我需要一种文档用多种视图来展现,具体步骤如下: 我们有两个假设 ...
- OpenGL MFC单文档 实现轨迹球
OpenGL MFC单文档 实现轨迹球 前言:我是一个怀揣着伟大梦想的普通男生!结果就是,一有时间就幻想着自己的伟大梦想,忘了自己下一步该迈出左脚还是右脚.这不,只顾做梦了,时光可不管我,独自一个人走 ...
- VC++ 单文档的状态栏编程、CEditView类实现编辑器功能、编辑框显示行号列号
Win10 企业版:VC6: 新建一个单文档工程:默认的视图类的基类是CView:选择CEditView类作为,看一下生成的效果: 构建一下:运行:以CEditView作为基类,生成的应用程序具有编辑 ...
- VC++ 单文档项目显示打开的文件
VC++ 新建一个单文档项目以后,直接运行:效果如下: 界面上的菜单,工具条,都是单文档项目框架自动生成: 然后选择 文件 菜单中的 打开 文件:点击后,并看不到任何反应:但是此时框架肯定进行了一些动 ...
- MFC 单文档的全局变量
单文档中每个view类中有自己的局部变量,所以在应用程序中定义全局变量要在这些View类啊,Doc类啊的外面. 待解决问题:希望对每处理一个文件,全局变量+1(如图1所示,期望处理后结果为5,CVMF ...
- MFC单文档框架编程(二): SDI框架下的消息处理
MFC单文档框架编程(一) ...................................................................................... ...
- VC++ MFC单文档应用程序SDI下调用glGenBuffersARB(1, pbo)方法编译通过但执行时出错原因分析及解决办法:glewInit()初始化的错误...
1.问题症状 在VC++环境下,利用MFC单文档应用程序SDI下开发OpenGL程序,当调用glGenBuffersARB(1, &pbo)方法编译通过但执行时出错,出错代码如下: OpenG ...
- 【数字图像处理】 二.MFC单文档分割窗口显示图片
本文是讲述<数字图像处理>系列文章,继上篇讲述BMP格式图片和显示后,该篇讲述如何对单文档进行分割.主要是采用CSplitterWnd静态分割窗口显示图片等相关知识.本文主要结合自己的课程 ...
- 【MFC】利用MFC向导生成单文档应用程序框架
00. 目录 文章目录 00. 目录 01. 解决方案与工程 02. 使用向导生成单文档应用程序框架 03. 预留 04. 附录 01. 解决方案与工程 每个应用程序都作为一个工程来处理,它包含了头文 ...
- MATLAB飞机大战第二版,windows程序设计——飞机大战札记(单文档文件登陆界面)...
windows程序设计--飞机大战笔记(单文档文件登陆界面) //2015/07/21 /by xbw/// /环境 VS 2013 飞机大战做的差不多了,闲来无事加点高大上的东西,关于单文档的登陆界 ...
最新文章
- 7-7 宇宙无敌大招呼 (C语言)
- [转]C++函数模板与模板函数
- 科学家们竟用乐高观察细胞,网友:万万没想到啊
- SQL Server 监控统计阻塞脚本信息
- 浏览器常见bug及解决办法
- libusb开发指南
- jsr 107_如何使用JSR107缓存注释
- 大数据 -- 安装Hadoop-单机模式(1)
- 大学计算机课代表竞选稿,课代表竞选演讲稿
- spring3.0注解定时任务配置及说明
- 又用FluorineFx弄了一个精简版的实时视频聊天
- 收评:5月24日资金流向(摘自益盟)
- 开源让这位 00 后逆袭成为各类大奖收割者
- 《数学分析八讲》(1)-连续统理论
- Android应用开发——记事本
- vue自定义指令—directive详解
- NFT和游戏化的革命-通过 Play Earn 尝试世界上第一个国际象棋游戏
- 详谈Activity生命周期函数调用时机
- [Swift]语言介绍
- 小程序获取上一个页面或者某个页面内的值
热门文章
- python实现二分查找算法
- 斯坦福与苹果基于Apple Watch检测心率异常,0.5%人群被检出,其中84%患有房颤...
- RDS数据订阅服务使用说明
- mongoDB导出数据库所有集合内容到json文件
- 《Android游戏开发详解》一3.5 继承
- [SDOI2011]打地鼠
- lucene.net helper类 【结合盘古分词进行搜索的小例子(分页功能)】
- win7下MongoDB集群告别裸奔
- PowerPivot 和 SQL Azure 快速入门
- 耐人寻味的 8 幅Java技术图