| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 535 人关注过本帖
标题:[求助]想在扫雷程序里添个假雷,遇到了一点麻烦,有人可指点迷津?
只看楼主 加入收藏
markringo
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-4-25
收藏
 问题点数:0 回复次数:0 
[求助]想在扫雷程序里添个假雷,遇到了一点麻烦,有人可指点迷津?
我最近刚刚深入研究API 想在扫雷游戏的雷区上添个假雷,迷惑玩家(恶搞外挂,意义不大,只是想试试)

先暂时用椭圆函数来做例子

Private Sub Command1_Click()
Dim sljb As Long, sbjb As Long, winrect As RECT,laosbjb as Long
sljb = FindWindow(vbNullString, "扫雷") '寻找游戏窗口的句柄
If sljb = 0 Then
Label1.Caption = "对不起没找到"
Exit Sub
End If
If sljb <> 0 Then Label1.Caption = "找到了 句柄是" & Str(sljb)
sbjb = GetDC(sljb) '获得该窗体的设备句柄
Label2.Caption = "设备句柄是" & Str(sbjb)
laosbjb = sbjb '将老设备句柄保留
Ellipse sbjb, 20, 20, 10, 10 '在一个定点画雷
GetWindowRect sljb, winrect '获得扫雷游戏的窗口大小
BitBlt sbjb, 0, 0, winrect.Right - winrect.Left, winrect.Bottom - winrect.Top, laosbjb, 0, 0, vbSrcCopy '这里大家都应该了解,在刚才画椭圆下windows是先在hDC中绘图,然后用GetDC来创建临时与窗体关联的设备场景,然后把hDC的内容拷到这个临时缓冲设备场景中来最终显示图形。这条语句则等效于强制重画,防止窗体被挡住后"雷"的消失.
ReleaseDC sljb, sbjb
End Sub

我自认为已经想的十分周全了,但是程序执行时雷是画上去了.但遮挡后还是消失了.

谁能告诉我这是怎么回事.希望有高人指出我之不足,谢谢!

搜索更多相关主题的帖子: 扫雷 麻烦 
2006-04-25 21:49
快速回复:[求助]想在扫雷程序里添个假雷,遇到了一点麻烦,有人可指点迷津?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032910 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved