摘要:
http://hi.baidu.com/xiaorida21/blog/item/8d8eb77a22eedee52e73b39e.html CWnd类 我们在屏幕上看到的所有对象都和窗口有关,它们或者派生于CWnd,属继承关系,如对话框、工具栏、状态栏、子控件;或者被CWnd合成,属服务员与服务对象关系,如图标、菜单、显示设备。 CWnd类封装的窗口操作主要包含窗口的创建和销毁、操作窗口风格、操... 阅读全文
posted @ 2011-05-06 15:05
一个农夫
阅读(9748)
评论(0)
推荐(0)
摘要:
MFC应用程序中处理消息的顺序 1.AfxWndProc() 该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc 2.AfxCallWndProc() 该函数负责保存消息(保存的内容主要是消息标识符和消息参数)供应用程序以后使用,然后调用WindowProc()函数 3.WindowProc() 该函数负责发送消息到OnWndMsg()函数,如果未被处理,则调用D... 阅读全文
posted @ 2011-05-06 14:25
一个农夫
阅读(3033)
评论(0)
推荐(0)
摘要:
OnPaint是WM_PAINT消息的消息处理函数,在OnPaint中调用OnDraw,一般来说,用户自己的绘图代码应放在OnDraw中。 OnPaint()是CWnd的类成员,负责响应WM_PAINT消息。OnDraw()是CVIEW的成员函数,没有响应消息的功能.当视图变得无效时(包括大小的改变,移动,被遮盖等等),Windows发送WM_PAINT消息。该视图的OnPaint 处理函数通过创... 阅读全文
posted @ 2011-05-06 14:17
一个农夫
阅读(5187)
评论(0)
推荐(0)
摘要:
一般的windows 复杂的界面需要使用多层窗口而且要用贴图来美化,所以不可避免在窗口移动或者改变大小的时候出现闪烁。 先来谈谈闪烁产生的原因 原因一: 如果熟悉显卡原理的话,调用GDI函数向屏幕输出的时候并不是立刻就显示在屏幕 上只是写到了显存里,而显卡每隔一段时间把显存的内容输出到屏幕上,这就是刷新周期。 一般显卡的刷新周期是 1/80秒左右,具体数字可以自己设置的。 这样问题就来了,一般画图... 阅读全文
posted @ 2011-05-06 14:11
一个农夫
阅读(8739)
评论(0)
推荐(0)
摘要:
一、简介 GDI是通过设备句柄(Device Context以下简称"DC")来绘图,而OpenGL则需要绘制环境(Rendering Context,以下简称"RC")。每一个GDI命令需要传给它一个DC,但与GDI不同,OpenGL使用当前绘制环境(RC)。一旦在一个线程中指定 了一个当前RC,在此线程中其后所有的OpenGL命令都使用相同的当前RC。虽然在单一窗口中可以使用多个RC,但在单一... 阅读全文
posted @ 2011-05-06 14:09
一个农夫
阅读(2213)
评论(0)
推荐(0)
摘要:
如何修改frame窗口的背景颜色? MDI窗口的客户区是由frame窗口拥有的另一个窗口覆盖的。为了改变frame窗口背景的颜色,只需要这个客户区的背景颜色就可以了。你必须自己处理WM_ERASEBKND消息。下面是工作步骤: 创建一个从CWnd类继承的类,就叫它CMDIClient吧; 在CMDIFrameWnd中加入CMDIClient变量;(具体情况看下面的代码) #include "MDI... 阅读全文
posted @ 2011-05-06 14:00
一个农夫
阅读(3563)
评论(0)
推荐(0)
摘要:
C中,使用malloc 和calloc申请测内存空间需要使用free进行内存释放,而在c++中,new函数申请的空间必须使用delete来释放。一. 使用new和delete运算符时PF率的变化情况Ctrl+Alt+Del进入任务管理器、性能,运行下列代码,并观察PF率的变化。可知,new运算符增加PF率,delete使PF率还原。注意:使用 new 得来的空间,必须用 delete 来释放;使用 new [] 得来的空间,必须用 delete [] 来释放。彼此之间不能混用。用 new [] 分配出连续空间后,指针变量“指向”该空间的首地址。#include<iostream.h> 阅读全文
posted @ 2011-05-06 00:13
一个农夫
阅读(5166)
评论(0)
推荐(0)