|
|

楼主 |
发表于 2005-6-22 12:39:00
|
显示全部楼层
Re: 帮帮我这个VB新手.....
你看我这图,我能检测到鼠标的位置,于是我打算通过鼠标单击后,把角色直接显示到该坐标位置上
代码:
Private Sub Blt() 这是每次循环执行的绘图函数
dim maprect as RECT
dim spritwrect as RECT
back.BltColorFill maprect, 0 以黑色清除并填充后台绘图平面
maprect.Bottom = ddsd1.lHeight ddsd1是建立背景图平面的属性
maprect.Right = ddsd1.lWidth 设置将要显示在屏幕上的背景图的大小
Call back.BltFast(0, 0, map, maprect, DDBLTFAST_WAIT)把map绘图平面内容复制到后台
获得前景角色位图平面的矩形区域
spriterect.Right = ddsd3.lWidth
spriterect.Bottom = ddsd3.lHeight
把角色复制到后台
Call back.BltFast(sx, sy, Sprite, spriterect, DDBLTFAST_SRCCOLORKEY)
back.DrawText 50, 50, mx & " " & my, False这里输出的是鼠标的当前坐标
main.Flip Nothing, DDFLIP_WAIT 这里不知道是什么意思...
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
sx = X
sy = Y
End Sub
调试时,单击鼠标后角色就不见了...????这是怎么回事呢?? |
|