Nehe OpenGL AppWizards with vs 2008

原本只想把原先的项目转到vs 2008上面去完善,于是去了nehe的主页找了个appwizards 在另外一台电脑上打开,vs 2003,装好模板,运行完,生成好所有文件后,拿到了工作站上面,用vs 2008打开。 f7直接编译,然后开始debug。一些问题这里说下。 1 关于glaux.h 网上很多人讨论过这个,于是换了lib kernel32.lib user32.lib gdi32.lib advapi32.lib 64位也一样。 2 关于字符串转换。_T 3 关于CMainFrame的构造函数 nehe生成的mainfram.h中,CMainFrame的构造函数是public的,08是protected。这个的问题源于MyApp.cpp中,InitInstance()函数在nehe wizards中如下 BOOL COGLTemplateApp::InitInstance() { // Standard initialization ... // To create the main window, this code creates a new frame window // object and then sets it as the application's main window object. m_pMainWnd = NULL; CMainFrame* pFrame = new CMainFrame; if (!pFrame->Create(NULL,"MFC OpenGL")) return FALSE; m_pMainWnd = pFrame; pFrame->ShowWindow(m_nCmdShow); pFrame->UpdateWindow(); return TRUE; } 显然,他要在App下面调用MainFrame。不过上面这几行代码有些奇怪。我屡思不得其解。 如果这样代替 BOOL COGLTemplateApp::InitInstance() { // Standard initialization ... m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); return TRUE; } 为什么他要舍近求远的重新做一个pFrame呢。 4 该好doc类,修改menu。copy代码,添加消息映射函数。完工 others: 如果InitInstance()像nehe那样,显示不出menu。这和doc类的调用顺序有关。 View类可以不用。那显示单张dcm怎么办? DoModal()一个对话框,然后直接将转换好位图放进去,还可以添加控件调整窗位窗宽,两全。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值