
Win32基础技术
Win32开发技术是很多windows开发语言封装的基石,剖析它就能了解到最基础、最基本的windows编程技术,这对以后的windows开发是很有帮助的。在这里,我将记下自己Win32的学习之旅,可供新手参考、高手指教……
BlueCoderLXH
https://www.zhihu.com/people/bluecoder_lxh
展开
-
<Win32_20>纯c语言版的打飞机游戏出炉了^_^
经过昨天的苦战,终于完成了纯C版的打飞机游戏——使用微信打飞机游戏的素材,不过玩法有些不同,下面会有详述 一、概述游戏的玩法、实现效果1. 游戏第一步,简单判断一下,给你一个准备的时间: 2.选择"是"进入游戏界面: 3. 分数的记法规则和微信版的一样——小飞机1000、中号飞机6000、大boss100004. 使用鼠标点击响应的飞机,能实现爆炸效果原创 2013-09-21 10:45:46 · 22472 阅读 · 52 评论 -
<Win32_19>用双缓冲技术实现真正的平滑
今年暑假自学了Win32 SDK , 从初学到现在,还是颇有收获。不过既然学了,就得学有所用。我们都知道IT行业中有两大方向:软件和游戏(其实网络是嵌入在二者之中的)。之前写了一个集音乐、视频播放于一身的简易播放器——说白了就是一个小软件。那么下一步,就是写一个游戏——纯Win32 C语言,不适用任何游戏引擎——打飞机游戏。 虽然游戏还在创作中(今天才开始,目前我正在努力codin原创 2013-09-19 17:01:36 · 6058 阅读 · 6 评论 -
<Win32_18>平滑的人物走动 —— 解决闪屏
今天咋一看,发现很久没写博客了的确,开学之后,写博客的时间越来越少了…… 今天来做一个比较实用的小应用——平滑的人物走动,同时解决常见的闪屏问题、实现透明位图这些技术在游戏开发中是很常见的 ---------------------------------------------------------------------------------------------原创 2013-09-11 22:51:14 · 6176 阅读 · 30 评论 -
<Win32_17>集音频和视频播放功能于一身的简易播放器
前段时间,在学习中科院杨老师的教学视频时,他说了一句话:"我很反对百八十行的教学程序,要来就来一个完整的程序"对此,我很是赞同。所谓真刀真枪的做了,你才会发现其中的奥秘——然而,能写一个完整的程序,首先你肯定是理解掌握了相关的技术,其次你享受了一个完整开发的基本"旅程" 因此,除非是很重要的技术,我会仅仅用一个几十行代码的程序加以说明,否则我就会用一个完整的程序来实现一些基本功能—原创 2013-09-01 19:23:33 · 6100 阅读 · 16 评论 -
<Win32_16>来看看标准菜单和右键菜单的玩法
日常应用中,菜单主要分为两种:(1) 标准菜单(处于应用程序菜单栏处的菜单) (2)右键快捷菜单几乎你所见过或使用过的软件中,都有它俩儿 为应用程序添加它们的基本步骤:(1)用代码或者IDE创建一个菜单资源(2)加载、显示菜单菜单(3)如果是右键菜单,在获取右键坐标按下的坐标时,还应该将它转换为屏幕坐标(ClientToScreen) —— 后面有原因解析(4)在原创 2013-08-31 19:59:21 · 3674 阅读 · 2 评论 -
<Win32_15>用纯C语言来实现WP8中磁贴动态翻转的功能
今年年初入手了一部诺基亚新款WP8手机——Lumia 620 经典蓝,用起来感觉很不错,很流畅、界面很清新到现在,用了大概有大半年时间了,一直很好奇WP8中磁贴动态翻转的实现算法——使用过WP8手机的朋友都知道,这个功能很有3D的效果,看起来感觉很不错但是,它到底是如何实现的呢? 今儿,我就来和大家一起剖析一下它的实现细节WP8中磁贴动态翻转功能细节:(1)将当原创 2013-08-29 09:31:57 · 6752 阅读 · 9 评论 -
<Win32_14>__win32控件(2)__教你自学掌握所有控件的玩法
学习win32 API 编程,我们应该善于利用微软给我们提供的一些辅助工具,例如大家都知道的MSDN、SPY++等等。今天在讲述之前呢,先给大家介绍一个很有用的工具——Control Spy——它的用途和SPY++有点儿类似,它能查看对应控件所属的风格、能响应的消息以及响应的通知码。有了它,加上msdn,你基本上就能很快掌握这些控件的用法了——都是基于消息驱动来原创 2013-08-24 17:10:26 · 4167 阅读 · 0 评论 -
<Win32_13>__win32控件(1)__教你玩美观的按钮控件
从今天开始,我将开始仔细讲一下win32中比较重要的一些控件的用法 好了,开始今天的讲解一、初级篇——创建一般的按钮控件按钮实质上就是窗口,因此它的创建本质上和创建窗口是一样的,也是用CreateWindow或者CreateWindowEx方法来创建,只不过有一些细节需要注意一下:(1)在窗口风格中必须添加WS_CHILD,表示它是子窗口,属于一个父窗口;如果为了使按钮一创原创 2013-08-23 21:49:20 · 7894 阅读 · 7 评论 -
<Win32_12>位图的透明效果——AlphaBlend函数的用法
我们知道位图中大多都有alpha信息(图像通道),专用于位图的透明今天使用的这个函数AlphaBlend——从名字上看,是"Alpha混合"的意思——那么既然是Alpha,也就和位图的透明相关了 OK,我们先来看看msdn中对于这个函数的说明:BOOL AlphaBlend( HDC hdcDest, // handle to destinat原创 2013-08-21 18:22:17 · 12997 阅读 · 0 评论 -
<Win32_11>程序员求爱的创意程序——升级版^_^
前段时间,我编写了一个创意程序,并用于向自己目前的女朋友表白,结果效果还不错,得到了她的芳心。于是我将自己的创意程序共享到csdn资源上,大多数网友认为创意不错,就是简单了些——呵呵,其实我个人也这么觉得,只不过当时时间和能力的限制,也就那样将就了……点击下载第一次的程序……而今呢,我在七夕节时再次为我的女朋友写了一个程序,这次算是上次的升级版吧,功能多了一些、界面效果也好多了原创 2013-08-19 17:40:25 · 6145 阅读 · 14 评论 -
<Win32_10>子窗口的应用——翻转窗口
在windows程序中,子窗口的应用很常见,基本上大部分窗口都有其指定的子窗口,这些子窗口统统受其父窗口的管理,各自实现相应的功能 老规矩,先简述今天的实例程序所实现的功能:在父窗口中先绘制一张位图,然后在其之上创建36个子窗口,点击子窗口隐藏,点击改子窗口占据父窗口的区域就重新显示该子窗口。 比较好玩儿,可以拼出很多好看的图形,来看看效果吧:原创 2013-08-11 17:39:07 · 4854 阅读 · 0 评论 -
<Win32_9>SetWindowRgn函数的应用——绘制个性化形状的窗口
SetWindowRgn这个函数比较好玩,它可以通过设定的区域(RGN)来制定该形状的窗口先来看看函数原型:int SetWindowRgn( HWND hWnd, // handle to window HRGN hRgn, // handle to region BOOL bRedraw // window redraw option);由原创 2013-08-10 11:55:25 · 6478 阅读 · 0 评论 -
<Win32_8>有意思的程序——抓取屏幕
Win32学了一段时间了,跟着杨老师的脚步,准备学习MFC,因此最近几天在复习C++,于是发现有将近一周没写博文了…… 今天来写一个较为简单、但是比较有意思的东西 不知大家在理发店理发的时候注意到一个奇观没:理发店一般都有两面对立的镜子,你仔细一看会发现,两面镜子里面的成像逐渐缩小,并且居中排列,很有意思 盗梦空间中也有一个类似的场景,我截了一个图: yes原创 2013-08-05 18:40:17 · 3556 阅读 · 0 评论 -
<Win32_7>由浅入深——滚动条
滚动条在Win32程序中是非常常见的一个控件,它的功能和地位也就不言而喻了,在文本输出中算是一个难点…… 我将借用P先生的思路讲述两种不同风格滚动条,下面切入主题:(实例程序都是显示一张位图 当然,位图比客户区大得多,以显示出滚动条的作用)(1)不可变长的滚动条这是16windows中的版本,windows1.0就有了这个玩意儿 它的使用主要依托以下两个API函数:设原创 2013-07-30 13:00:37 · 3969 阅读 · 3 评论 -
<Win32_6>Win32的验证码程序
上次利用文本输出规范,我写了一个"程序员求爱程序",今天还是继续玩一下Win32的文本输出,这次我将详细谈一下Win32的文本输出规范。毕竟,这个在Win32编程中还是很重要的,基本上每一个程序都离不开这个玩意儿 ok,先来说一下基础:Win32中有一个关于文本信息的结构体TEXTMETRIC,它包含很丰富的文本信息,而P先生(Charles Petzold)的书中说道,我日常编程中仅原创 2013-07-29 10:00:22 · 3648 阅读 · 1 评论 -
<Win32_5>程序员求爱的创意程序^_^
开动你的创意,给你未来的她写一个表白程序吧……很浪漫……原创 2013-07-27 12:37:14 · 8435 阅读 · 29 评论 -
<Win32_4>深入浅出Win32的计时器
说起时间,对于我们搞IT的人来说,那是要多重要有多重要。我觉得有价值的时间是给有抱负和有才能的人准备的,因为他们会充分利用,不会让时间失望…… 呵呵,有点儿说远了,还是回归主题吧 Win32的计时器其实就是用以下两个函数控制的一个控件:设置计时器UINT_PTR SetTimer( HWND hWnd, UINT_PTR nIDEvent, U原创 2013-07-26 11:03:06 · 4151 阅读 · 0 评论 -
<Win32_3>Bitmap位图应用2 ------ 键盘控制人物走动
今天掌握了Bitmap的用法,忍不住再来一次升级版的应用------用键盘控制人物的走动,这个可能在游戏设计中用的很多,不过今儿就先来小试牛刀,呵呵…… 本人学习编程有个"癖好" —— 那就是有了想法,下一步就是实现,越快实现越好,不实现就誓不罢休…… 好了,F话少说了,还是先来逐步了解需求吧(1)首先需要一个完整的人物走路分解图,每一个方向4张,分别是:直立、右脚向前、直立原创 2013-07-24 16:56:50 · 5176 阅读 · 13 评论 -
<Win32_2>Bitmap位图应用1 ------ Win32的数字时钟
学习编程离不开实战演练——用所掌握的技术来实现相应的功能,今天来玩一玩Win32的位图Bitmap,写一个数字时钟 我们先来看看这个数字时钟的需求:(1)可以用ASCII码的数字,但是不太美观,因此需要做一个位图,完美模拟电子表的数字(我亲自做了一个,待会儿上传)(2)如何将位图贴到我们的程序中a)先将位图加载到内存中我们先来看看msdn:HBITMAP LoadB原创 2013-07-24 11:53:32 · 5260 阅读 · 12 评论 -
<Win32_1>深入浅出windows消息机制
上学期学习了Java ,感觉Java写一个窗口真心简单,很易上手,也就难怪很多开发人员选择Java作为自己的开发编程语言但是由于自身对windows的热爱,让我觉得c、c++语言才是我亲睐的编程语言,虽然难度大些,但是这才能体现能力所在,其实之前一直想自学一下win32。但是由于时间的显示和种种原因而耽搁了,于是今年暑假决心深入学习win32。 在学习过程中呢,我会在此留下自己的学原创 2013-07-23 09:56:32 · 5904 阅读 · 12 评论