vb line 的问题(HELP!)

来源:百度知道 编辑:UC知道 时间:2024/05/20 04:09:32
Private Sub Command1_Click()
Dim i, pi
Dim Mymaths As String
pi = 4 * Atn(1)
Picture1.Scale (-2 * pi, 100)-(2 * pi, -100)
Picture1.CurrentX = -2 * pi
Picture1.CurrentY = 0

For i = -2 * pi To 2 * pi Step 0.001
Picture1.Line -(i, 5 * i + 1), RGB(0, 255, 0)
※※

Next

Picture1.Line (-2 * pi, 0)-(2 * pi, 0), RGB(255, 0, 0) 'X轴
Picture1.Line (0, -200 * pi)-(0, 200 * pi), RGB(0, 0, 255) 'Y轴

End Sub

Private Sub Command2_Click()
Picture1.Cls
End Sub

我要用这段程序画函数图像,但是如果把上面的“※※”处的式子改成“TEXT1.TEXT”就总是提示“类型不匹配”,怎么回事啊?哪位能帮忙改改啊!
说清楚些:把“Picture1.Line -(i, 5 * i + 1), RGB(0, 255, 0)”改成“Picture1.Line -(i, text1.text), RGB(0, 255, 0)”就出问题了。

-------------------------------------------------------------

Picture1.Line -(i, val(text1.text)), RGB(0, 255, 0)
不行——假如 text1.text="5*i+1" ,val(text1.text)后就成了text1.text=5 了 !

哥们,你这是要在运行时输入和计算表达式的值
先在部件中添加一个Microsoft Script Control 控件。

ScriptControl1.ExecuteStatement "i=" & i '将 i 的值赋给 ScriptControl1 的内部变量
S = ScriptControl1.Eval(Text1.Text) '计算text1设置的表达式,即:5*i+1
Picture1.Line -(I, S), RGB(0, 255, 0)

这样的方案可解决你的问题,但通用性不强。如果你今后找到在运行时能输入和计算带变量的表达式的值的更好方法,还望告知一声qq32063270