今天教程已经学到第十四课了,呵呵,坚持下来不容易!
又遇到不明白的地方了,再次来请大家传道授业解惑。言归正传:
这是一个滚动条跟踪鼠标实例,建立了一个picture控件和两个滚动条,当鼠标在picture中移动里,下边的滚动条和右边的滚动条自动跟踪并随着鼠标一起运动定位。
代码如下:
Private Sub Form_Load()
HScroll1.Max = 100
HScroll1.Min = 0
VScroll1.Max = 100
VScroll1.Min = 0
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Y > Picture1.Top And Y < Picture1.Top + Height Then
VScroll1.Value = (Y - Picture1.Top) / (Picture1.Height) * 100
End If
If X > Picture1.Left And X < Picture1.Left + Width Then
HScroll1.Value = (X - Picture1.Left) / (Picture1.Width) * 100
End If
End Sub
通过以上的代码执行是对的
但我不明白的是,Y的取值范围应该是从picture1的最低点到picture1的最高点!(即个人认为应该代码应该是if y> picture1.最低点 and y<picture1.最低点 + height then才对呀)
Y > Picture1.Top(???那不就已经超过picture1的最高点了) And Y < Picture1.Top + Height Then(这里的范围我也认为不在picture1内呀)。
劳烦大家给我解释一下可以嘛?
谢谢