摘要: 1. DIB & DDBhttp://www.codeproject.com/Articles/7443/DFB-vs-DIB2. 内存设备描述表 (Memory DC)http://www.codeproject.com/Articles/224754/Guide-to-Win32-Memory-DC3. win32中的区域http://www.codeproject.com/Articles/1944/Guide-to-WIN-Regions4. win32中的裁剪区域http://www.codeproject.com/Articles/2095/A-Guide-to-WIN-C 阅读全文
posted @ 2014-03-06 19:07 a ray of sunshine 阅读(902) 评论(0) 推荐(0) 编辑
摘要: 1. what is DC?Windows中的设备描述表,实际上就是对显示设备的一种抽象,而显示设备其实就是将内中的像素颜色数据渲染出来,所以设备描述表本质上就是一块内存,我们可以使用GDI函数来在该内存区域内进行绘制,所谓的绘制实际就是在该内存区域中添加像素的颜色信息,同时,Windows提供的GDI函数中,使用Pen来绘制线段,使用Brush来填充该DC,使用Font来写文字,所以如果我们要使用GDI函数在DC中,就必须首先设置这些参数,这些参数被称为DC的属性,显然如果这样使用GDI函数来进行绘图将非常繁琐,所以Windows将这些DC属性也抽象到设备描述表(DC)这个概念中,所以我们可 阅读全文
posted @ 2014-03-06 12:21 a ray of sunshine 阅读(935) 评论(0) 推荐(0) 编辑
摘要: 1.进程间的数据交换。 考虑 WM_SETTEXT 消息的实现,这个消息将lParam这个参数指向的字符串,设置为窗口的标题,我们可以在不同的进程中发送这个消息。那么这个消息如何实现呢? 考虑进程1中的字符串 LPCTSTR str = TEXT("Hello,World"),我们要把该字符串发送到进程2中该如何去做。我们知道每一个Win32进程都有其私有的进程地址空间,这些地址空间是虚拟的,所以同一个地址在不同的进程中起实际指向的物理内存是不同的,对于变量str,它实际是进程1中的一个虚拟地址,所以我们如果直接把该虚拟地址发送到进程2中,在进程2中通过该虚拟地址进行寻址, 阅读全文
posted @ 2014-03-06 11:41 a ray of sunshine 阅读(1125) 评论(0) 推荐(0) 编辑