- 博客(20)
- 资源 (39)
- 收藏
- 关注
原创 Windows列表框类
列表框就是像酷狗播放器歌曲列表那种,一首首歌相当于一个个项目,可以单选一个也可以多选项目,选中的时候项目会高亮,这是自动的,无需自己设置当一个项目被选中的时候,列表框控件便发送WM_COMMAND消息到其父窗口,然后父窗口确定哪个项目被选中单选列表框: 用户可以按动空格键选择光标所在的项目。方向键可以移动光标和当前的选择,并可以滚动列表框中的内容多选框列表: 空格建用于切换光标所在项目的选择状态,可
2015-12-28 22:21:26 2849 1
原创 贪吃蛇详解Windows编程(四)
控制区的代码就不详细讲解了,自己看看就能明白,并没有什么难点。如果有兴趣的画还可以把界面做好一点,把功能做丰富一点。但是我觉得点到为止就行了。我用的是Win32空项目写的,你也可以用自动生成的代码写,但是我觉得那个太乱代码太多。 接下来是全部的代码:#include <windows.h>#include <vector>#include <time.h>//游戏区和控制区宽度高度#def
2015-12-27 15:50:36 3058 18
原创 贪吃蛇详解Windows编程(三)
蛇已经动起来了,接下来就是吃食物,身体变长!4.制作食物 分为两步,设定食物坐标,画出食物 4.1设定食物坐标POINT ptFood = { 20,20 };//初始化食物坐标//[其他代码]//初始化蛇VOID InitSnake(){ //先清空坐标 vSnakePoint.clear(); //给蛇坐标分配空间 vSnakePoint.resize
2015-12-27 15:24:29 1673
原创 贪吃蛇详解Windows编程(二)
终于可以让蛇动起来了,想想还有点小激动呢!哈哈,我们继续!3.让蛇动起来首先你得先创建一个定时器吧,然后我们先让蛇默认只往一个方向移动先,不要着急想着键盘控制那么快,只要一个方向能动,其它方向你还怕动不了? 代码片段如下:#define SNAKESPEED 500 //初始化蛇的速度为500ms#define TIMERID_1 1 //定
2015-12-27 15:06:53 2218 4
原创 贪吃蛇详解Windows编程(一)
贪吃蛇可以用很多种语言写,但是基本的思路都是一样的,在这里我就用C/C++写,但不是纯C或者纯C++写,因为那样太没效率了,用Windows封装的API写会节省很多代码而且是有界面的。既然是详解,所以一篇文章肯定讲不完的,所以我会分开几篇讲。一个小建议:如果只有C或C++基础而没学过Windows程序设计,那么只建议看看思路即可,如果简单的学过一些Windows可以看完全篇.先说一下思路,不管做什么
2015-12-27 14:23:48 9590 2
原创 Windows编辑类
编辑类的类名是(edit),然后调用CreateWindow创建一个矩形区域,然后可以在里面编辑文字 例如:case WM_CREATE: hwndEdit = CreateWindow(TEXT("edit"), NULL, WS_CHILD | WS_VISIBLE|WS_BORDER, 0, 0,100, 100, hw
2015-12-27 13:15:52 508
原创 Windows滚动条类
前面的窗口滚动条只能出现在父窗口的固定地方,而滚动条控件能出现在父窗口的任何地方。创建窗口滚动条控件:使用预定义的滚动条类(scrollbar),和两种滚动条样式SBS_VERT和SBS_HORZ。 例如:case WM_CREATE: hWndScroll = CreateWindow(L"scrollbar", L"", WS_CHILD | WS_VISIBLE | SBS_V
2015-12-24 12:05:27 1803
原创 Windows按钮类
子窗口可以向父窗口发送消息:首先调用hwndParent=GetParent(hwndchild)获取父窗口句柄 再调用函数SendMessage(hwndParent,message,wParam,lParam); 给父窗口发送消息标准子窗口控件:按钮(button),复选框(check
2015-12-21 14:40:07 998
原创 定时器的用法
使用定时器需要用到如下几个函数: 1.设置定时器函数//如果第四个参数为NULL则系统发送一个WM_TIMER消息到应用程序队列//如果第一个参数为0 则第二个参数忽略 一般为0//返回定时器ID,返回0表示失败UINT SetTimer( HWND hWnd, //窗口句柄 UINT nIDEvent, //定时器ID UINT uElapse, //定时时间
2015-12-20 14:27:19 780
原创 Windows程序设计--鼠标
鼠标的基本操作有三种: 1.单击 按下鼠标按钮,然后松开 单击又分为左单击(WM_LBUTTONDOWN)和右单击(WM_RBUTTON) 2.双击 连续两次快速按下鼠标按钮并松开 双击只有左键双击的消息,要接收这个消息要在窗口类中添加CS_DBLCLKS风格.当双击后第二个WM_LBUTTONDOWN会简单的被WM_LBUTTONDBLCLK消息替换 3.拖动 保
2015-12-19 19:28:13 1081
原创 Windows程序设计--击键消息和字符消息
键盘消息分为击键消息和字符消息。而击键消息就是指当你按下一个键时它是哪个键。 一般有以下四个击键消息: WM_KEYDOWN、WM_SYSKEYDOWN、WM_KEYUP、WM_SYSKEYUP。这里分为系统击键消息和非系统击键消息。而非系统击键消息是我们常用的。当你按下一个键的时候就会产生一个WM_KEYDOWN消息,但是此时你还不懂他按下的是哪个键,只知道他按下了一个键,接下来就用wPara
2015-12-16 14:18:59 1572
原创 Windows程序设计--画几何图形
常用的几何图形有以下几种:直角矩形:Rectangle 椭圆 :Ellipse 圆角矩形:RoundRect 椭圆周上的弧,两端以弦连接:Chord 椭圆上的饼图:Pie 多边形:Polygon 多个多边形:PolyPolygon函数原型如下:画直角矩形BOOL Rectangle( HDC hdc, // 设备环境句柄 int nLeftRect, /
2015-12-15 16:31:24 3786
原创 Windows程序设计--画笔和画刷
画笔和画刷是重要的GDI对象,因为不管你画什么图形都需要画笔和画刷,虽然多数情况下是系统默认的。Windows提供的三种备用画笔(stock pen)白色画笔:WHITE_PEN 黑色画笔:BLACK_PEN //这是默认的画笔 空画笔:NULL_PEN使用画笔需要以下几个函数://获取预定义的备用笔、刷子、字体或者调色板的句柄 //HGDIOBJ就是GDI对象的句柄HGDIOBJ GetSt
2015-12-14 13:57:36 2900
原创 Windows程序设计--画点和线
点和线是属于绘图的一种,所以它们的函数属于GDI函数,那么就先需要了解一下GDI函数。GDI函数的主要分类: 1.取得或释放设备内容的函数 比如: BeginPaint和EndPaint函数 GetDC和RealseDC函数等等 2.取得有关设备内容信息的函数
2015-12-13 21:40:29 3768
原创 Windows程序设计--设置滚动条详解二
用以下一个结构和三个函数就能设置滚动条了 1.滚动条信息结构//SetScrollInfo函数设置这个结构的信息//GetScrollInfo函数返回这个结构的信息typedef struct tagSCROLLINFO { UINT cbSize; //存储这个结构的大小,以字节为单位 UINT fMask; //标志这个结构的哪些值被设置或被获取
2015-12-12 14:10:47 1327 1
原创 Windows程序设计--设置滚动条详解一
先讲怎么用普通的方法设置滚动条。重点是设置滚动条而不是文本输出,所以示例程序的文本很简洁。说到设置滚动条我们就会想到三点: 1.用鼠标拖动滑块使客户区内容重绘 2.用键盘控制滑块移动 3.用鼠标滚轮控制滑块移动那么我们就把这三个功能都给用上用到的函数有以下几个://设置滚动条范围//返回TRUE表示成功,FALSE表示失败BOOL SetScrollRange( HWND hWnd,
2015-12-11 16:18:02 2915
原创 Windows程序设计--文本输出
文本输出要全部讲完那要长篇大论了,这里只简略说一下常用的几个文本输出函数。首先,要想输出文本,你得知道几个概念。先把常用到的两个文本输出函数列出来。 1.格式化文本输出函数 int DrawText( HDC hDC, // 设备环境句柄 LPCTSTR lpString, // 要显示的字符串 int nCount, // 字符个数 LPRECT l
2015-12-09 15:18:36 940
原创 Windows程序设计--创建第一个窗口
本篇文章讲如何创建一个基本的窗口。MessageBox弹出来的消息框就是一个窗口,但是窗口是怎样创建的呢?其实很简单,只要几个固定的步骤就行。而只要我们的窗口创建出来之后,只要把需要的函数填进去就能得到一个有功能的窗口。所以我觉得学习Windows就是学习API函数而已,懂得如何调用,各个参数的意思就行。说到参数,其类型都是从C语言的基本数据类型演变而来的,并不难。现在开始创建第一个窗口,该窗口并无
2015-12-08 20:23:20 1401
原创 Uincode和ASCLL
我的Windows学习之路–Unicode和ASCLL的区别和用法为什么会有Unicode编码?因为ASCLL字符集无法表示所有的字符,它只能表示255个字符,所以Unicode就顺势而出了。首先Unicode是双子节编码,它可以表示6W多种字符,足以表示世界上的字符。 从VS2010开始默认支持Unicode字符集(其它编译器我不知道),但VS2010以下的编译器你要手动设置当前项目的字符集。如
2015-12-07 16:20:10 1201
原创 Windows程序设计--起步
**———-这是我学习Windows程序设计第五版的学习笔记 写这文章是为了总结以及日后查阅方便,也希望能给和我一样入门的小白一些启示,如有错误,望不吝赐教。(文章中我的角色就是一个传授者,我觉得这样才能更好的对一些问题的理解。)**这本书的第一章:开始,只是教了一个Windows程序的雏形。也就是Hello World,学过C语言的都应该知道吧?在C语言中刚写的程序就是一个Hello World
2015-12-06 14:45:20 606
MFC操作excel
2016-12-25
JScript帮助文档
2016-05-24
w3school离线版
2016-05-24
css手册chm版
2016-05-24
Vsiaul Assist X VS2008-2015破解版
2015-12-25
Vsiaul Assist X VS2008-2015可用破解版
2015-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人