请说下这段代码的意思。

2320475 2003-10-03 05:02:25
这是一个当图片大于窗体时,用鼠标移动多余部分的代码?

Private Sub Form_Load()
Image1 = LoadPicture("f:\bbs\tu\01.jpg") '这个路径可能要改
'FitForm Image1
End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
gX = X
gY = Y
End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Not Button = vbLeftButton Then Exit Sub
Dim dx As Long, dy As Long, ax As Long, ay As Long, t As Long, l As Long, tt As Long, ll As Long

'dy = Y - gY
dx = X - gX
ll = Image1.Left
'tt = Image1.Top
l = Abs(ll)
't = Abs(tt)
ax = (Image1.Width - l - ScaleWidth)
'ay = (Image1.Height - t - ScaleHeight)
If ll > 0 Then
dx = 0
Else
If dx < 0 Then
If Abs(dx) > ax Then dx = -ax
Else
If dx > l Then dx = l
End If
End If
'If tt > 0 Then
'dy = 0
'Else
'If dy < 0 Then
'If Abs(dy) > ay Then dy = -ay
'Else
'If dy > t Then dy = t
' End If
'End If
Image1.Move ll + dx 'tt + dy

End Sub
...全文
106 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
海牛 2003-10-06
  • 打赏
  • 举报
回复
2320475 (清风e栈) 这段代码没意思!
pigpag 2003-10-04
  • 打赏
  • 举报
回复
tt ll 这种命名有点乱糟糟。

不过代码简单——我觉得自己研究比较好。
这段代码有防止移出界的功能,边运行边看应该能够理解。
2320475 2003-10-03
  • 打赏
  • 举报
回复
我大概能看懂。第一个是默认载入,第二个时,当鼠标按下时,把当前的点给X,Y第三个有些不懂。ll = Image1.Left, ax = (Image1.Width - l - ScaleWidth),请帮助
thirdapple 2003-10-03
  • 打赏
  • 举报
回复
晕,这样简单的代码我想是不用说明的……
请自己仔细读读就知道了
2320475 2003-10-03
  • 打赏
  • 举报
回复
不是吧,你们的水平就这样吗?
佛的光辉 2003-10-03
  • 打赏
  • 举报
回复
加载一个图片到image控件,然后通过鼠标右键移动图片
海牛 2003-10-03
  • 打赏
  • 举报
回复
要怎么说明?

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧