⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 out.frm

📁 函数绘图程序 VB 编写 可以绘制初高中 函数图像 支持颜色
💻 FRM
📖 第 1 页 / 共 5 页
字号:
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Next X
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
Exit Sub
myerror:
MsgBox ("错误")

End Sub

Private Sub Command13_Click()

End Sub

Private Sub Command2_Click()
On Error GoTo myerror
Text8.Text = "+∞"
Text9.Text = "-∞"
Dim a, b, X, Y, jingdu, zuox, zuoy, finish, tx, cuxi
Picture1.AutoRedraw = False
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, temp, temp, tx, cuxi
Close #1
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
If Text1.Text = "" Then Text1.Text = 0
If Text2.Text = "" Then Text2.Text = 0
a = Text1.Text
b = Text2.Text
If IsNumeric(a) And IsNumeric(b) Then
For X = -2500 / zuox To 2500 / zuox Step jingdu
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Y = a * X + b
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
Next X
Picture1.AutoRedraw = True
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
For X = -2500 / zuox To 2500 / zuox Step jingdu
Y = a * X + b
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Next X
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
Else
MsgBox ("输入错误!")
End If
Exit Sub
myerror: MsgBox ("错误!")
End Sub



Private Sub Command3_Click()
On Error GoTo myerror
Dim a, b, c, X, Y, jingdu, zuox, zuoy, finish, tx, cuxi
Picture1.AutoRedraw = False
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, temp, temp, tx, cuxi
Close #1
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
If Text3.Text = "" Then Text3.Text = 0
If Text4.Text = "" Then Text4.Text = 0
If Text5.Text = "" Then Text5.Text = 0

a = Text3.Text
b = Text4.Text
c = Text5.Text
If Option19 = True Then
If a < 0 Then
Text8.Text = (4 * a * c - b * b) / 4 * a
Text9.Text = "-∞"
End If
If a > 0 Then
Text8.Text = "+∞"
Text9.Text = (4 * a * c - b * b) / (4 * a)
End If
If a = 0 And b <> 0 Then
Text8.Text = "+∞"
Text9.Text = "-∞"
End If
Else
If a > 0 Then
Text8.Text = "+∞"
Text9.Text = c
End If
If a < 0 Then
Text9.Text = "+∞"
Text8.Text = c
End If
End If
For X = -2500 / zuox To 2500 / zuox Step jingdu
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
If Option19.Value = True Then Y = a * X * X + b * X + c
If Option20.Value = True Then Y = a * (X + b) ^ 2 + c
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
Next X
Picture1.AutoRedraw = True
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
For X = -2500 / zuox To 2500 / zuox Step jingdu
If Option19.Value = True Then Y = a * X * X + b * X + c
If Option20.Value = True Then Y = a * (X + b) ^ 2 + c
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Next X
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
Exit Sub
myerror:
MsgBox ("错误")
End Sub

Private Sub Command4_Click()
Clipboard.clear
Clipboard.SetData Picture1.Image, vbCFBitmap
MsgBox "图像已发送到剪贴板,请用其他程序调用!"
End Sub

Private Sub Command5_Click()
MsgBox ("此版本限制此功能!!")
End Sub

Private Sub Command6_Click()
MsgBox ("此版本限制此功能!!")

End Sub

Private Sub Command7_Click()
MsgBox ("此版本限制此功能!!")

End Sub

Private Sub Command8_Click()
On Error GoTo myerror
Text8.Text = "+∞"
Text9.Text = "-∞"

Dim a, b, X, Y, jingdu, zuox, zuoy, finish, tx, cuxi
Picture1.AutoRedraw = False
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, temp, temp, tx, cuxi
Close #1
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
If Text10.Text = "" Then Text10.Text = 0
a = Text10.Text
For X = -2500 / zuox To 2500 / zuox Step jingdu
If X = 0 Then GoTo 10
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Y = a / X
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
10 Next X
Picture1.AutoRedraw = True
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
For X = -2500 / zuox To 2500 / zuox Step jingdu
If X = 0 Then GoTo 20
Y = a / X
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
Picture1.Circle (xx, yy), cuxi, tx
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
20 Next X
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
Exit Sub
myerror:
MsgBox ("错误")

End Sub

Private Sub Command9_Click()
On Error GoTo myerror

Text8.Text = "+∞"
Text9.Text = "0"

Dim a, b, X, Y, jingdu, zuox, zuoy, finish, tx, cuxi
Picture1.AutoRedraw = False
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, temp, temp, tx, cuxi
Close #1
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
If Text11.Text = "" Then Text11.Text = 0
a = Text11.Text
If (a <= 0) Or (a = 1) Then
    MsgBox ("真数大于0且不等于1")
    GoTo 30
End If
For X = -2500 / zuox To 2500 / zuox Step jingdu
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
Y = a ^ X
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
If xx < 0 Or xx > 5000 Or yy < 0 Or yy > 5000 Then GoTo 50
Picture1.Circle (xx, yy), cuxi, tx
50 Next X
Picture1.AutoRedraw = True
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
For X = -2500 / zuox To 2500 / zuox Step jingdu
Y = a ^ X
xx = Int(X * zuox) + 2500
yy = Int(Y * zuoy * -1) + 2500
If xx < 0 Or xx > 5000 Or yy < 0 Or yy > 5000 Then GoTo 60

Picture1.Circle (xx, yy), cuxi, tx
finish = ((X + (2500 / zuox)) / (5000 / zuox)) * 1000
Picture2.Line (0, 0)-(finish, 135), RGB(0, 0, 255), BF
60 Next X
Picture2.Line (0, 0)-(1000, 135), RGB(212, 208, 200), BF
Exit Sub
myerror:
MsgBox ("错误")

30 End Sub

Private Sub exit_Click()
End
End Sub

Private Sub Form_Load()
Me.Show
Dim X, zuox, zuoy, jingdu, beijingr, beijingg, beijingb, zuor, zuog, zuob, cuxi
Option2.Value = True
Option8.Value = True
Option13.Value = True
Option16.Value = True
Option19.Value = True
Option21.Value = True

Open "c:\hs.ini" For Output As #1
Write #1, 300, 300, 0.001, 16777215, 0, 0, 10
Close #1
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cx
Close #1
Picture3.Line (0, 0)-(300, 300), beijing, BF
Picture4.Line (0, 0)-(300, 300), zuo, BF
Picture5.Line (0, 0)-(300, 300), tx, BF


Picture1.AutoRedraw = True
Picture1.Line (0, 0)-(5000, 5000), beijing, BF
Picture1.Line (0, 2500)-(5000, 2500), zuo
Picture1.Line (2500, 0)-(2500, 5000), zuo
Picture1.Line (5000, 2500)-(4900, 2400), zuo
Picture1.Line (5000, 2500)-(4900, 2610), zuo
Picture1.Line (2500, 0)-(2400, 100), zuo
Picture1.Line (2500, 0)-(2620, 100), zuo
For X = 2500 To 5000 Step zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 0 Step -1 * zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 5000 Step zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
For X = 2500 To 0 Step -1 * zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
Picture1.AutoRedraw = False
End Sub

Private Sub open_Click()
CommonDialog1.Filter = "BMP|*.bmp"
CommonDialog1.Flags = &H1000
CommonDialog1.Action = 1
If CommonDialog1.CancelError = False Then
Picture1.Picture = LoadPicture(CommonDialog1.FileName)
End If
End Sub

Private Sub Option1_Click()
If Option1.Value = True Then
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
cuxi = 1
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
End If
End Sub

Private Sub Option10_Click()
If Option10.Value = True Then
Text6.Text = 100
Text7.Text = 100
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
zuox = 100: zuoy = 100
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
Picture1.AutoRedraw = True
Picture1.Line (0, 0)-(5000, 5000), beijing, BF
Picture1.Line (0, 2500)-(5000, 2500), zuo
Picture1.Line (2500, 0)-(2500, 5000), zuo
Picture1.Line (5000, 2500)-(4900, 2400), zuo
Picture1.Line (5000, 2500)-(4900, 2610), zuo
Picture1.Line (2500, 0)-(2400, 100), zuo
Picture1.Line (2500, 0)-(2620, 100), zuo
For X = 2500 To 5000 Step zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 0 Step -1 * zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 5000 Step zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
For X = 2500 To 0 Step -1 * zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
Picture1.AutoRedraw = False
End If
End Sub

Private Sub Option11_Click()

If Option11.Value = True Then

Dim a, b, X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
If Text6.Text = "" Then Text6.Text = 1
If Text7.Text = "" Then Text7.Text = 1
a = Text6.Text
b = Text7.Text
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
zuox = a: zuoy = b
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
Picture1.AutoRedraw = True
Picture1.Line (0, 0)-(5000, 5000), beijing, BF
Picture1.Line (0, 2500)-(5000, 2500), zuo
Picture1.Line (2500, 0)-(2500, 5000), zuo
Picture1.Line (5000, 2500)-(4900, 2400), zuo
Picture1.Line (5000, 2500)-(4900, 2610), zuo
Picture1.Line (2500, 0)-(2400, 100), zuo
Picture1.Line (2500, 0)-(2620, 100), zuo
For X = 2500 To 5000 Step zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 0 Step -1 * zuox
Picture1.Line (X, 2470)-(X, 2500), zuo
Next X
For X = 2500 To 5000 Step zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
For X = 2500 To 0 Step -1 * zuoy
Picture1.Line (2500, X)-(2550, X), zuo
Next X
Picture1.AutoRedraw = False
End If

End Sub

Private Sub Option12_Click()
MsgBox ("您选择了精确绘图,绘图速度会很慢,请耐心等待!!")
If Option12.Value = True Then
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
jingdu = 0.0001
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
End If

End Sub

Private Sub Option13_Click()
If Option13.Value = True Then
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
jingdu = 0.001
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
End If

End Sub

Private Sub Option14_Click()
If Option14.Value = True Then
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
jingdu = 0.01
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
End If

End Sub

Private Sub Option15_Click()
If Option15.Value = True Then
Dim X, zuox, zuoy, jingdu, beijing, zuotx, cuxi
Open "c:\hs.ini" For Input As #1
Input #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
jingdu = 0.1
Open "c:\hs.ini" For Output As #1
Write #1, zuox, zuoy, jingdu, beijing, zuo, tx, cuxi
Close #1
End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -