VB桌面程序.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一个让桌面下雪的小程序(并非屏幕保护)1楼以前见到过一个有趣的小程序,叫snow,可以在桌面上下雪,学还可以在窗体边缘、图像边缘堆积,关键是并非屏幕保护,可以边下雪便运行其它程序。?我就用VB模仿了一个。先贴上效果图:2楼源代码?Private?Declare?Function?GetDC?Lib?user32?(ByVal?hwnd?As?Long)?As?Long?GetDC()功能是获取指定窗体的设备场景的句柄(hDC),用参数0则可以获取整个屏幕的场景句柄?Private?Declare?Function?GetPixel?Lib?gdi32?(ByVal?hdc?As?Long,?ByVal?x?As?Long,?ByVal?y?As?Long)?As?Long?GetPixel用于取得场景(这里是整个屏幕)中某点的颜色值?Private?Declare?Function?SetPixel?Lib?gdi32?(ByVal?hdc?As?Long,?ByVal?x?As?Long,?ByVal?y?As?Long,?ByVal?crColor?As?Long)?As?Long?SetPixel用于设置场景(这里是整个屏幕)中某点的颜色值?Private?Declare?Function?ReleaseDC?Lib?user32?(ByVal?hwnd?As?Long,?ByVal?hdc?As?Long)?As?Long?释放由GetDC()获取的设备场景句柄,否则可能造成系统锁死?Private?Declare?Function?InvalidateRect?Lib?user32?(ByVal?hwnd?As?Long,?lpRect?As?RECT,?ByVal?bErase?As?Long)?清理窗口雪花?Private?Type?POINTAPI?定义坐标点结构??x?As?Long??y?As?Long?End?Type?Private?Type?RECT?定义“区域”数据结构,但实际上并没有用到,因为仅需在函数InvalidateRect中传递一个空的RECT参数??left?As?Long??top?As?Long??right?As?Long??bottom?As?Long?End?Type?Dim?rect1?As?RECT?Private?Const?ScrnWidth?=?1024?屏幕宽度(单位:像素)?Private?Const?ScrnHight?=?768?屏幕高度(单位:像素)?Private?Const?SnowCol?=?HFEFFFE?雪花颜色?Private?Const?SnowColDown?=?HFFFFFF?积雪颜色?Private?Const?SnowColDuck?=?HFFDDDD?深色积雪颜色?Private?Const?SnowNum?=?500?同一时间飘动的雪花数量?Dim?hDC1?As?Long?存储桌面窗口设备句柄?Dim?pData(SnowNum)?As?POINTAPI?存储每个雪花的位置信息?Dim?pColor(SnowNum)?As?Long?存储画出雪花前屏幕原来的颜色?Dim?Vx?As?Integer?雪花总体水平飘行速度?Dim?Vy?As?Integer?雪花总体垂直下落速度?Dim?PVx?As?Integer?单个雪花实际水平飘行速度?Dim?PVy?As?Integer?单个雪花实际垂直飘行速度?初始化雪花位置?Private?Sub?InitP(i?As?Integer)?pData(i).x?=?Rnd()?*?ScrnWidth?pData(i).y?=?Rnd()?*?2?pColor(i)?=?GetPixel(hDC1,?pData(i).x,?pData(i).y)?取得屏幕原来的颜色值?End?Sub?取得某一点与周围点的对比度,确定是否在此位置堆积雪花?Private?Function?GetContrast(i?As?Integer)?As?Long?Dim?ColorCmp?As?Long?存储用作对比的点的颜色值?Dim?tempR?As?Long?存储CorlorCmp的红色部分,下同?Dim?tempG?As?Long?Dim?tempB?As?Long?Dim?Slope?As?Integer?存储雪花飘落方向:Vx/Vy?计算雪花飘落方向?If?PVy??0?Then??Slope?=?PVx?/?PVy?Else??Slope?=?2?End?If?根据雪花飘落方向决定取哪一点作对比点,?若PVx/PVy在-1到1之间,即Slope=0,就取正下面的象素点?若PVx/PVy1,取右下方的点,

文档评论(0)

中华书局 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档