资源简介
自己封装的鼠标封装的鼠标场景漫游工具类RoamingScenceManager,跟界面没有任何关系,压缩包里面有三个工程,分别是Qt,Win32(原生OpenGL界面),MFC 三个环境,里面都用到了RoamingScenceManager,用法简单,适合刚刚学opengl的新手构建场景。

代码片段和文件信息
#include “stdafx.h“
#include “MainFrm.h“
#include “ClassView.h“
#include “Resource.h“
#include “OpenGLScence_MFC.h“
class CClassViewMenuButton : public CMFCToolBarMenuButton
{
friend class CClassView;
DECLARE_SERIAL(CClassViewMenuButton)
public:
CClassViewMenuButton(HMENU hMenu = NULL) : CMFCToolBarMenuButton((UINT)-1 hMenu -1)
{
}
virtual void OnDraw(CDC* pDC const CRect& rect CMFCToolBarImages* pImages BOOL bHorz = TRUE
BOOL bCustomizeMode = FALSE BOOL bHighlight = FALSE BOOL bDrawBorder = TRUE BOOL bGrayDisabledButtons = TRUE)
{
pImages = CMFCToolBar::GetImages();
CAfxDrawState ds;
pImages->PrepareDrawImage(ds);
CMFCToolBarMenuButton::OnDraw(pDC rect pImages bHorz bCustomizeMode bHighlight bDrawBorder bGrayDisabledButtons);
pImages->EndDrawImage(ds);
}
};
IMPLEMENT_SERIAL(CClassViewMenuButton CMFCToolBarMenuButton 1)
//////////////////////////////////////////////////////////////////////
// 构造/析构
//////////////////////////////////////////////////////////////////////
CClassView::CClassView()
{
m_nCurrSort = ID_SORTING_GROUPBYTYPE;
}
CClassView::~CClassView()
{
}
BEGIN_MESSAGE_MAP(CClassView CDockablePane)
ON_WM_CREATE()
ON_WM_SIZE()
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_CLASS_ADD_MEMBER_FUNCTION OnClassAddMemberFunction)
ON_COMMAND(ID_CLASS_ADD_MEMBER_VARIABLE OnClassAddMemberVariable)
ON_COMMAND(ID_CLASS_DEFINITION OnClassDefinition)
ON_COMMAND(ID_CLASS_PROPERTIES OnClassProperties)
ON_COMMAND(ID_NEW_FOLDER OnNewFolder)
ON_WM_PAINT()
ON_WM_SETFOCUS()
ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnSort)
ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnUpdateSort)
ON_WM_DESTROY()
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClassView 消息处理程序
int CClassView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDockablePane::OnCreate(lpCreateStruct) == -1)
return -1;
CRect rectDummy;
rectDummy.SetRectEmpty();
// 创建视图:
const DWORD dwViewstyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
if (!m_wndClassView.Create(dwViewstyle rectDummy this 2))
{
TRACE0(“未能创建类视图\n“);
return -1; // 未能创建
}
// 加载图像:
m_wndToolBar.Create(this AFX_DEFAULT_TOOLBAR_style IDR_SORT);
m_wndToolBar.LoadToolBar(IDR_SORT 0 0 TRUE /* 已锁定*/);
onchangeVisualstyle();
m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));
m_wndToolBar.SetOwner(this);
// 所有命令将通过此控件路由,而不是通过主框架路由:
m_wndToolBar.SetRouteCommandsViaframe(FALSE);
CMenu menuSort;
menuSort.LoadMenu(IDR_POPUP_SORT);
m_wndToolBar.ReplaceButton(ID_S
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1038562 2015-08-10 21:54 OPenGLDemo\include\GL\glew.h
文件 21440 1998-08-18 16:24 OPenGLDemo\include\GL\glut.h
文件 74912 2015-08-10 21:54 OPenGLDemo\include\GL\glxew.h
文件 64836 2015-08-10 21:54 OPenGLDemo\include\GL\wglew.h
文件 2388 2016-03-05 12:41 OPenGLDemo\include\MathAPIKernel\Matrix4D.h
文件 1714 2016-03-05 11:33 OPenGLDemo\include\MathAPIKernel\Position3D.h
文件 2502 2016-03-05 11:33 OPenGLDemo\include\MathAPIKernel\Vector3D.h
文件 610719 2015-07-16 10:01 OPenGLDemo\lib\lib_qt\glew32.dll
文件 237568 2001-11-08 02:27 OPenGLDemo\lib\lib_qt\glut32.dll
文件 403968 2015-08-10 21:52 OPenGLDemo\lib\lib_VS\glew32.dll
文件 619228 2015-08-10 21:52 OPenGLDemo\lib\lib_VS\glew32.lib
文件 169984 1998-08-18 16:25 OPenGLDemo\lib\lib_VS\glut.dll
文件 79654 1998-08-18 16:25 OPenGLDemo\lib\lib_VS\glut.lib
文件 169984 1998-08-18 16:25 OPenGLDemo\lib\lib_VS\glut32.dll
文件 79898 1998-08-18 16:25 OPenGLDemo\lib\lib_VS\glut32.lib
文件 403968 2015-08-10 21:52 OPenGLDemo\Project\OpenGLScence_MFC\Debug\glew32.dll
文件 169984 1998-08-18 16:25 OPenGLDemo\Project\OpenGLScence_MFC\Debug\glut.dll
文件 169984 1998-08-18 16:25 OPenGLDemo\Project\OpenGLScence_MFC\Debug\glut32.dll
文件 1213440 2005-10-19 15:32 OPenGLDemo\Project\OpenGLScence_MFC\Debug\OPENGL.DLL
文件 495104 2016-03-06 08:59 OPenGLDemo\Project\OpenGLScence_MFC\Debug\OpenGLScence_MFC.exe
文件 3295968 2016-03-06 08:59 OPenGLDemo\Project\OpenGLScence_MFC\Debug\OpenGLScence_MFC.ilk
文件 7581696 2016-03-06 08:59 OPenGLDemo\Project\OpenGLScence_MFC\Debug\OpenGLScence_MFC.pdb
文件 9189 2016-03-05 16:08 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\ClassView.cpp
文件 1310 2016-03-05 16:08 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\ClassView.h
文件 6690 2016-03-05 15:19 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\FileView.cpp
文件 1135 2016-03-05 15:19 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\FileView.h
文件 12670 2016-03-05 15:56 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\MainFrm.cpp
文件 1482 2016-03-05 15:19 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\MainFrm.h
文件 177016 2016-03-05 16:28 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\OpenGLScence_MFC.aps
文件 5173 2016-03-05 15:19 OPenGLDemo\Project\OpenGLScence_MFC\OpenGLScence_MFC\OpenGLScence_MFC.cpp
............此处省略127个文件信息
相关资源
- 安卓c语言开发SDL2+opengles
- 交互式计算机图形学 第六版 OpenGL源代
- VC++基于OpenGL模拟的一个3维空间模型
- opengl绘制汽车.cpp
- opengl实现水流效果sph
- opengl源代码,全是精华!
- OpenGL迷宫山东大学图形学实验三
- opengl的立方体消隐算法
- vc++ opengl代码爆炸
- 我见过最漂亮的CS仿真程序openGL和C+
- 广东某工业大学的openGL课程设计
- 使用OpenGL实现多个小球在密闭空间内
- 利用openGL和C++实现光线跟踪绘图的完
- OpenGl C++太阳系小行星运行系统 可切换
- vc++和OpenGL实现三维地形实时动态显示
- C++实现利用OpenGL实现三维绘图
- 太阳、地球、月亮之间的运动图Open
- MFC 单文档 实现opengl 三维旋转 缩放
- OPENGL的烟花程序(代码)
- MFC+OpenGL三维建模与动画显示
- 基于opengl粒子系统实现喷泉的模拟
- 一个基于openGL的太阳系模型,太阳地
- vc6.0+opengl纯色五角星填充
- vc6.0+opengl动态绘制五角星
- NeHe_OpenGL教程完整版 里面有地址可以
- OpenGL简单——实现立方体贴上不同纹
- MFC实现dem的读取与现实
- VC++ OpenGL三维地形漫游
- OpenGL实现三维地形实时动态显示
- VC++中Opengl实现建筑物虚拟漫游
评论
共有 条评论