想要在Picture里画函数图像。开始用pset描点,可是速度太慢,而且还有许多其它问题。比如说画完之后如果在切换到其它的窗口,图像就没了。虽然把picture的autoredarw设为true可以解决,但描点时的动画效果没有了。
请给一个画函数图像的实例,具体一点。谢谢!

解决方案 »

  1.   

    动画效果:每画一个点加一句DOEVENTS
    速度太慢:画函数图象可以用pset描点的,太慢是你的算法问题
      

  2.   

    Dim xStart As Double, yStart As Double
    Dim x As Double
    Private Sub Form_click()
    x = 0
    Picture1.ScaleMode = 3
    Picture1.Line (0, 100)-(Picture1.Width, 100)
    Picture1.Line (0, 0)-(0, Picture1.Height)
    For x = 0 To Picture1.Width Step 0.01
    DoEvents
     Picture1.PSet (xStart + x, yStart - 100 * Sin(10000 * 3.14159 * x)), vbRed
    Next x
    End SubPrivate Sub Form_Load()
    xStart = 0: yStart = 100
    End Sub
      

  3.   

    Private Sub Picture1_Paint()
    For x = 0 To Picture1.Width Step 0.01
    DoEvents
     Picture1.PSet (xStart + x, yStart - 100 * Sin(10000 * 3.14159 * x)), vbRed
    Next x
    End Sub
      

  4.   

    如果要速度请避免使用pset改用Line。