摘要:这篇是针对推箱子游戏而写的,某个时候在学C语言,最近转到windows设计,不知道是否有同样的感受,后面的东西学了,前面的就有点生疏了。其实,我的理解是,注意力转移了,当集中于当前问题的时候就会忽略以前的某些知识。这也说明,人的注意力是随着时间,学习内容的不同在起变化。但是,只要稍微复习一下就能很快
阅读全文
04 2016 档案
摘要:这一篇是针对推箱子小游戏写的,有很多细节在其它文章已记录,但还是再写一篇,我一直觉得知识需要反反复复的锤炼才能理解,尤其对于windows程序设计,它不难,但是非常琐碎!每一句代码都有其意思,为什么这样为什么那样,一句代码不明白,就是一个知识点不明白,能允许不能解释的代码存在吗?我们总要给其一个解释
阅读全文
摘要:还是直接拿出一个问题来说比较直观,假如想在客户区显示一张图,图像大小:600*800(像素),要求客户区不大不小正好包含这张图,如何设置窗口大小? 窗口的大小包括客户区和非客户区,如下图所示: 由于图片是放在客户区中的,所以窗口最后的总高度=客户区的高度+上下两头的空隙区,只需要计算空隙区的尺寸就可
阅读全文
摘要:矩形应用,画一个3行3列的矩形组合 #include <windows.h> LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; #define edge 30 //矩形边长 HBRUSH hbrush[2];//刷子数组 void pai
阅读全文
摘要:观察这个图,发现它并不是全屏的,而是某个固定大小,背景是由30*30的小砖块铺成的,整个背景14行,16列,这里所说的14行和16列所在的区域是用户区,而不是整个窗口。 现在计算整个窗口的高度,应该等于14*30+上边非客户区的一段+最下面一段非常小的边框。窗口计算专门写一篇记录,参看:http:/
阅读全文
摘要:这个题目是从书本做的笔记,是一个很好的程序,书本写的不算太仔细,在这里做详细记录。程序实现的功能如下: 功能细节非常多,包含如下: 一、窗口总是居在所有窗口的最前端二、窗口没有标题栏等等三、可以用鼠标拖动客户区移动,(一般来说,是通过移动标题栏移动)四、(由于没有标题栏)鼠标右键可以弹出菜单,选择退
阅读全文
摘要:屏幕抓取程序的意思是将整个屏幕图显示在应用程序的用户区中,等价于截图。对桌面窗口的操作:首先得知道桌面窗口的宽和高,获取宽和高需要利用窗口的设备句柄,而获取设备句柄需要知道窗口句柄,这一系列的连串关系如下:窗口句柄——>设备句柄——>获取设备句柄属性(比如宽和高)。(书本采用的一种方法,但至少也把这
阅读全文
摘要:画笔 画笔从创建来说分为两类,库存的和自定义的。从性质上来说也分为两类:Cosmetic画笔和Geometric画笔。 Cosmetic画笔只有三个属性:线宽(width)、线型(style)和颜色(color)。它有固定的线宽(设备单位),不具有按比例缩放的特性,但优点是绘制速度快。在一些矢量图形
阅读全文
摘要:窗口是个需要花费一点时间研究的东西。以常识来看,假如要在窗口中画一个矩形,怎么能让这个矩形只在自己的应用程序中画出,而不跑到窗口之外呢?言外之意,是做一个限制。书本上的说法如下:....在windows环境中,视频显示设备是一个共享设备,即在同一时刻,显示设备上可以同时显示多个应用程序的输出信息。为
阅读全文
摘要:内容太多,先记录一下最实用的几个知识,如何调用一个位图文件。一、位图导入资源管理器中,再从中调用。位图导入资源管理器后,会有一个ID。方法一,使用LoadBitmap函数调用之。 方法二,使用LoadImage函数调用。与方法一的区别在于,不仅可以装载位图,还包括图标和光标。说明如下: 二、直接从硬
阅读全文
摘要:起源:在IBM PC硬件中有一个Intel8259A定时芯片,称其为时钟,ROM BIOS将它初始化为每隔54.92毫秒产生一次编号为0x08的硬中断,这个中断每秒大约发生18.207次。Windows使用一个名为SYSTEM.DRV的设备驱动程序来处理时钟中断。当SYTEM.DRV接收到一次时钟中
阅读全文
摘要:根据结构创建刷子的说明: 类型是可选的,有BS_SOLID,BS_HATCHED,BS_PATTERN和BS_HOLLOW四种类型。 题一:如何在创建窗口之后重新填充用户区窗口? 方法一:首先计算窗口大小,将结果放入一个矩形结构rect中,然后利用矩形填充函数FillRect填充。根据前面的研究,得
阅读全文
摘要:/********************************************************************** * * 这一篇文是以前写的,但现在看来好像还是没有透彻理解。一块内容真的需要反反复复好几遍才能理解。 * *************************
阅读全文
摘要:解题:一、在用户区的某个坐标位置打印一行字符串二、在用户区的中心位置打印一行字符串,位置始终不变三、读取一个纯文本文件(FILE)内容到用户区中,(保持格式) BeginPaint(HWND hWnd,LPPAINTSTRUCT lpPaint);:获取HDC句柄,其中LPPAINTSTRUCT l
阅读全文
摘要:CDocManager类[实现文件] /SRC/DOCTEMPL.CPP CSingleDocTemplate类[实现文件] /SRC/DOCSINGL.CPP CWinApp::OnFileOpen() /SRC/DOCTEMPL.CPP CDocTemplate[实现文件]
阅读全文
摘要:设计一个DLL,内含一个函数计算a+b; 创建DLL文件:头文件sum.h 源程序:sum.cpp 创建程序调用:
阅读全文
摘要:/********************************************************************************************************************** 发布日期:* 更新日期:2017-11-16 09:22:0
阅读全文
摘要:C语言 1、void __CALLTYPE f();2、int __CALLTYPE f();3、int __CALLTYPE f(int);4、double __CALLTYPE f(int, double);5、int* __CALLTYPE f(int*, char*); 1、_f2、_f3、
阅读全文
摘要:RTTI,简单的说,就是判定A类是否为B类的基类。将书本的内容最大程度的简化,如下图的类层次,现在解决的问题就是:判定“梨”是否是“红富士”的基类。
阅读全文
摘要:#include "my.h" CMyWinApp theApp;/*起点->全局对象*/ void main() { CWinApp* pApp = AfxGetApp();/*返回对象地址*/ }
阅读全文
摘要:非静态成员变量,分别两种可能,要么类自定义,要么继承而来。根据《深度探索C++对象模型》的解读。 在这个类中,有三个私有成员变量(不管私有,保护,或公有),都按照某个次序排列(一般根据定义的先后顺序),唯一需要注意的是:某些变量需要对齐填充。在内存中的排列次序依次为:x,y,z;假如需要对这三个变量
阅读全文
摘要:first和end做为全局变量,分别指向链表的头和尾。建立链表的方式也比较简易,从二进制文件数据块中,依次从头到尾读取,每读取一个就建立一个结点。
阅读全文
摘要:题解:这段代码的要求如下,输入一段字符密码(长度<=8)以二进制的形式存放在磁盘中,在输入时需要验证两次输入是否正确。第二个,登录。从磁盘中读取这个文件,然后再输入密码,看两者是否相同。 登录密码需要用到的知识1.getch()取字符无回显。2.strcmp()比较两个字符串是否相等(相等返回0)3
阅读全文