- 博客(14)
- 资源 (107)
- 收藏
- 关注
原创 修改标题栏和AfxMessageBox标题栏的方法
汇总几个方法,供参考:一、修改标题栏的方法 1法: BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; // TODO: Modify the Window cl
2012-08-28 10:34:26 3712
转载 计算机图形学 窗口 视口 世界坐标
首先提示:要想真正理解他们之间的区别与联系,只能通过自己亲自编程体会!!另外强烈建议大家看看孙鑫视频教程第11讲,很好很强大。在 Windows的作图函数中,涉及逻辑坐标到设备坐标的转换。这里提到的窗口(window)、视口(viewport)是对应的概念。视口是与设备相关的一个矩形区域,坐标单位是与设备相关的。窗口的坐标是逻辑坐标,与设备无关。窗口
2012-08-23 23:28:18 4486
原创 MFC中视图类的OnDraw与OnPaint两个函数的区别
OnPaint是WM_PAINT消息的消息处理函数,在OnPaint中调用OnDraw,一般来说,用户自己的绘图代码应放在OnDraw中。OnPaint()是CWnd的类成员,负责响应WM_PAINT消息。OnDraw()是CVIEW的成员函数,没有响应消息的功能.当视图变得无效时(包括大小的改变,移动,被遮盖等等),Windows发送WM_PAINT消息。该视图的OnPaint 处理
2012-08-23 15:35:18 2534
原创 VC6.0下opengl编程入门
int CTestView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; myInitOpenGL(); return 0; } void CTestView::myInitOpenGL()
2012-08-22 09:21:30 2931
原创 App初始化中的ProcessShellCommand报错的问题
关于"建立空文档失败"的问题的分析!许多新手在遇到此类问题时总是措手无策,如果谁有耐心就看看我写的下面这片文章吧。这类问题的出现主要在BOOL CWinApp::ProcessShellCommand(CCommandLineInfo& rCmdInfo);函数的关键内容:BOOL bResult = TRUE;switch (rCmdInfo.m_nShellCommand)
2012-08-22 09:06:07 4415
原创 opengl文字显示(二)
(一)显示英文OpenGL并没有直接提供显示文字的功能,并且,opengl也没有自带专门的字库。因此,要显示文字,就必须依赖操作系统所提供的功能了。各种流行的图形操作系统,例如Windows系统和Linux系统,都提供了一些功能,以便能够在OpenGL程序中方便的显示文字。最常见的方法就是,我们给出一个字符,给出一个显示列表编号,然后操作系统由把绘制这个字符的OpenGL命令装到指定的
2012-08-13 23:27:12 2768
原创 opengl文字显示(一)
线贴一个简单可用的opengl文字显示调用函数opengl文字显示大致三步:1,创建字体2,输出打印3,删除字体1,创建字体的函数:/* * BuildFont * 创建位图字体 */GLvoid BuildFont(GLvoid){ HFONT font; // 字体句柄 HFONT oldfont; bas
2012-08-13 23:20:50 8258 3
原创 屏幕坐标向opengl三维坐标转换
很多人用OpenGL绘图会遇到一个问题即屏幕坐标向OpenGL坐标转换,在网上流传着如下类似的代码: GLint viewport[4]; GLdouble modelview[16]; GLdouble projection[16]; GLfloat winX, winY, winZ; GLdouble posX, posY, posZ; glGe
2012-08-08 17:16:02 2235 1
原创 内存检测工具BoundsChecker使用详述
或许你还不知道大名顶顶的Nu-Mega,但一定听说过他们的产品SoftICE,BoundsChecker也是这家公司的产品。与Visual C++配合使用,据说威力强大。本人和没有实际用过,在此复制一下百度百科的简介,好有个简单的认识。 BoundsChecker是一个运行时错误检测工具,它主要定位程序运行时期发生的各种错误。它通过驻留在Visual C++开发环境内部的自动处理调试程序
2012-08-08 14:55:26 5484
原创 VC的内存泄漏检测工具Visual Leak Detector
初识Visual Leak Detector 灵活自由是C/C 语言的一大特色,而这也为C/C 程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很 严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。 然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊
2012-08-08 09:34:25 1261
原创 检测内存越界错误的工具---pageheap和gflag
我推荐使用PageHeap.Exe和Gflags.Exe,主要的原因还是因为当有人问内存越界的错误如何查出来的时候,国外的朋友经常会推荐这两个工具(highly recommend)。我用过之后,也觉得有些时候用用还是有好处的。PageHeap.Exe将针对某个指定的应用程序启用Page Heap标志,从而自动监视所有的malloc、new和heapAlloc的内存分配,找出内存错误。
2012-08-08 09:21:02 5182
原创 VC程序退出----如何退出
1、OnOK()或OnCancel()//只对窗口程序有用2、PostQuitMessage(0);//最常用3、ExitProcess(0);//强制结束,注意防止内存泄漏4、void CMainFrame::OnClose() {// TODO: Add your message handler code here and/or call default
2012-08-07 14:20:45 1186
转载 时间预算---为什么你总是低估了项目开发周期
一个曾经与我一起工作过的经验丰富的项目经理声称,他拿到程序员的时间估算以后,先将它乘以π,然后转化下一个时间数量级后,才能得到真正的值。1天转化成3.14周。他过去因为程序员不擅长估算时间而吃尽了苦头。我创建了一个用来翻译程序员时间估算的表格,来尽量缩小估算错误。时间估算是困难的。每一个程序员都有一个现实的估计区间。低于这个区间的估计意味着(构件,测试,检查代码的)时间开销被低估了
2012-08-07 12:46:33 1979
转载 C++数组的动态分配(new)、初始化(memset)和撤销(delete)
数组的动态分配(new)、初始化(memset)和撤销(delete) 一维数组的动态分配,初始化和撤销都好说,几乎每一本C++教材都会做出详细的说明。具体如下: 动态分配(例如分配10个单元的): int *array=newint [10]; 初始化:memset(array,0,sizeof(array)); (也可以利用一个for循环对其赋值初始化)
2012-08-06 16:00:25 38223 5
Java Web系统开发
2014-11-04
java核心技术第1卷
2014-11-03
ASN.1 Communication between Heterogeneous Systems
2013-09-16
linux串口编程从驱动到应用
2013-07-23
IGMP协议rfc1112 2236 3376
2013-03-29
一个MFC的界面库,包括大多数常用控件
2013-03-28
LINUX设备驱动程序(第3版中文版)
2013-02-19
深入理解Linux内核中文第三版(高清有目录完整)
2012-12-27
installshield制作安装包详解
2012-08-25
VC绘图参考类和实例
2012-08-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人