本人用line 方法在picturebox 中画了几条曲线(颜色不同),横坐标为时间,纵坐标为百分比,现在想当鼠标指针在picutrebox 中移动时,取出曲线对应的百分比。怎么解决?谢谢!

解决方案 »

  1.   

    不是很明白你说的"取出曲线对应的百分比"是什么意思.
    画上去的线并非对象,无法用鼠标捕捉.
    如果你要得到的是:鼠标指针处对应的百分比,那可以使用MOUSEMOVE事件来获得鼠标的X,Y坐标,再结合你画的曲线所代表的比例,就可以计算出来了.
      

  2.   

    直接用Point取颜色~Private Const LineColor = vbRedPrivate Sub Form_Load()
        With Picture1
            .AutoRedraw = True
            .ScaleMode = vbPixels
            .ForeColor = LineColor
            Picture1.Line (0, 0)-(.ScaleWidth, .ScaleHeight)
        End With
    End SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        Dim i As Integer
        
        With Picture1
            For i = 0 To .ScaleHeight
                If .Point(X, i) = LineColor Then
                    Me.Caption = i
                    Exit Sub
                End If
            Next
        End With
    End Sub