VB6鼠标事件和与行的交互

VB6鼠标事件和与行的交互,vb6,Vb6,我正在用VB6制作一个方程式图示器,并且我构造了一段代码,当鼠标指针位于picturebox(picturebox是显示曲线的位置)上时,它会显示鼠标指针的坐标 我已经成功地做到了这一点,鼠标的坐标显示良好,直到鼠标被放置到轴上(由直线函数构造)。指针位于轴上时显示的命令明显错误 当鼠标指针位于y轴上时,x值不是0,而是某个随机数。 当鼠标指针位于x轴上时,y值不是0,而是一些随机数 坐标显示在状态栏上。下面是可能帮助您解决此问题的代码 以下是状态栏上显示的co ORD代码: Private S

我正在用VB6制作一个方程式图示器,并且我构造了一段代码,当鼠标指针位于picturebox(picturebox是显示曲线的位置)上时,它会显示鼠标指针的坐标

我已经成功地做到了这一点,鼠标的坐标显示良好,直到鼠标被放置到轴上(由直线函数构造)。指针位于轴上时显示的命令明显错误

当鼠标指针位于y轴上时,x值不是0,而是某个随机数。 当鼠标指针位于x轴上时,y值不是0,而是一些随机数

坐标显示在状态栏上。下面是可能帮助您解决此问题的代码

以下是状态栏上显示的co ORD代码:

Private Sub picGraph_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
StatusBar1.Panels(1).Text = "x: " & X & " - y: " & Y

End Sub
以下是轴线的施工规范:

Public Sub Form_Activate()

Dim xmin As Single
Dim xmax As Single
Dim Dx As Single
Dim ymin As Single
Dim ymax As Single
Dim i As Integer


'set default bounds and Dx

xmin = -10
xmax = 10
ymin = -10
ymax = 10
Dx = 0.1

'scale graph to default bounds

picGraph.Scale (xmin, ymax)-(xmax, ymin)

'draw graph axis

picGraph.Cls
picGraph.Line (xmin, 0)-(xmax, 0), vbRed
picGraph.Line (0, ymin)-(0, ymax), vbRed

For i = 0 To xmin Step -1
    picGraph.Line (i, -0.25)-Step(0, 0.5), vbBlue
Next i
For i = 0 To xmax
    picGraph.Line (i, -0.25)-Step(0, 0.5), vbBlue
Next i
For i = 0 To ymin Step -1
    picGraph.Line (-0.25, i)-Step(0.5, 0), vbBlue
Next i
For i = 0 To ymax
        picGraph.Line (-0.25, i)-Step(0.5, 0), vbBlue
Next i

End Sub
顺便说一句:当鼠标指针位于要绘制的曲线上时,鼠标坐标没有问题


如果您能深入了解鼠标在轴上时为何会出现混乱,我们将不胜感激。

显示您的数字是用工程符号书写的。因此,它不是显示0.002,而是显示为2E-3。 如果将StatusBar1.Panels(1).Text=“x:&x&”&y:&y更改为包含格式,您可能会发现它更接近您需要的格式。所以会是这样的

StatusBar1.Panels(1).Text = "x: " & format$(X,"0.00") & " - y: " & format$(Y,"0.00")