form1.frm
来自「上传的包含两个文件」· FRM 代码 · 共 232 行
FRM
232 行
VERSION 5.00
Begin VB.Form Form1
AutoRedraw = -1 'True
Caption = "Form1"
ClientHeight = 6000
ClientLeft = 165
ClientTop = 855
ClientWidth = 7875
LinkTopic = "Form1"
ScaleHeight = 6000
ScaleWidth = 7875
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton Command3
Caption = "显示随机数"
Height = 375
Left = 6480
TabIndex = 2
Top = 5520
Width = 1215
End
Begin VB.CommandButton Command2
Caption = "保存随机数"
Height = 375
Left = 4920
TabIndex = 1
Top = 5520
Width = 1215
End
Begin VB.CommandButton Command1
Caption = "产生随机数"
Height = 375
Left = 3360
TabIndex = 0
Top = 5520
Width = 1215
End
Begin VB.Menu C
Caption = "操作"
Begin VB.Menu QX
Caption = "曲线图"
Shortcut = ^Q
End
Begin VB.Menu ZF
Caption = "直方图"
Shortcut = ^Z
End
Begin VB.Menu BZ
Caption = "饼壮图"
Shortcut = ^B
End
Begin VB.Menu T
Caption = "退出"
Shortcut = ^T
End
End
Begin VB.Menu S
Caption = "设置"
Begin VB.Menu COLOR
Caption = "背景色"
Shortcut = ^O
End
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim n As Integer, a As Integer, b As Integer
Dim num() As Integer
Private Sub BZ_Click()
Const pi = 3.14159266
Dim total As Single
Dim s1, s2, s3 As Single
Cls
total = 0
Form1.Scale (-200, 200)-(200, -200)
For i = 1 To n
total = total + num(i)
Next i
Form1.FillStyle = 0
s1 = 0
For i = 1 To n
s2 = 2 * pi * num(i) / total
s3 = s1 + s2
If s3 > 2 * pi Then
s3 = 2 * pi
End If
Form1.FillColor = QBColor(i Mod 16)
Form1.Circle (0, 0), 100, , -s1, -s3
s1 = s3
Next i
End Sub
Private Sub COLOR_Click()
Form3.Show
End Sub
Private Sub Command1_Click()
n = InputBox("请输入n的值")
a = InputBox("请输入a的值")
b = InputBox("请输入b的值")
ReDim num(n)
Randomize
For i = 1 To n
num(i) = Int((b - a + 1) * Rnd + a)
Next i
End Sub
Private Sub Command2_Click()
Open "d:\file.dat" For Output As #1
For i = 1 To n
Write #1, num(i)
Next i
Close #1
End Sub
Private Sub Command3_Click()
Dim data As String
Open "d:\file.dat" For Input As #1
Do While Not EOF(1)
Input #1, data
Form2.Show
Form2.Text1.Text = Form2.Text1.Text + data + " "
Loop
Close #1
End Sub
Private Sub Form_Load()
Form1.Show
Form2.Hide
Form3.Hide
End Sub
Private Sub QX_Click()
Dim C As Integer, q As Integer
C = b
Do While C >= 10
q = q + 1
C = Int(C / 10)
Loop
Cls
If n <= 10 Then
Form1.Scale (-4, 1.2 * C * (10 ^ q))-(15, -1.2 * C * (10 ^ q))
Form1.Line (-2, 0)-(12, 0)
Form1.Line (12, 0)-(11.5, 0.3 * C * (q - 1))
Form1.Line (12, 0)-(11.5, -0.3 * C * (q - 1))
For i = -2 To 11
Form1.Line (i, 0)-(i, 0.3 * C * (10 ^ (q - 1)))
If i <> 0 Then
Form1.CurrentX = i: Form1.CurrentY = -0.1 * C * (10 ^ (q - 1))
Form1.Print i
End If
Next i
Else
Form1.Scale (-4, 1.2 * C * (10 ^ q))-(1.5 * n, -1.2 * C * (10 ^ q))
Form1.Line (-2, 0)-(1.2 * n, 0)
Form1.Line (1.2 * n, 0)-(1.15 * n, 0.3 * C * 10 ^ (q - 1))
Form1.Line (1.2 * n, 0)-(1.15 * n, -0.3 * C * 10 ^ (q - 1))
For i = -2 To Int(1.1 * n)
Form1.Line (i, 0)-(i, 0.3 * C * (10 ^ (q - 1)))
If i <> 0 Then
Form1.CurrentX = i: Form1.CurrentY = -0.1 * C * (10 ^ (q - 1))
Form1.Print i
End If
Next i
End If
Form1.Line (0, 1.1 * C * (10 ^ q))-(0, -10 ^ (q - 1))
Form1.Line (0, 1.1 * C * (10 ^ q))-(0.3, 1.05 * C * (10 ^ q))
Form1.Line (0, 1.1 * C * (10 ^ q))-(-0.3, 1.05 * C * (10 ^ q))
For i = 0 To 10
Form1.Line (0, i * C * (10 ^ (q - 1)))-(0.3, i * C * (10 ^ (q - 1)))
Form1.CurrentX = 0.1: Form1.CurrentY = i * C * (10 ^ (q - 1))
Form1.Print i * C * (10 ^ (q - 1))
Next i
For i = 1 To n - 1
Form1.Line (i, num(i))-(i + 1, num(i + 1))
Next i
End Sub
Private Sub T_Click()
End
End Sub
Private Sub ZF_Click()
Dim C As Integer, q As Integer
Cls
C = b
Do While C >= 10
q = q + 1
C = Int(C / 10)
Loop
If n <= 10 Then
Form1.Scale (-4, 1.2 * C * (10 ^ q))-(15, -1.2 * C * (10 ^ q))
Form1.Line (-2, 0)-(12, 0)
Form1.Line (12, 0)-(11.5, 0.3 * C * (q - 1))
Form1.Line (12, 0)-(11.5, -0.3 * C * (q - 1))
For i = -2 To 11
Form1.Line (i, 0)-(i, 0.3 * C * (10 ^ (q - 1)))
If i <> 0 Then
Form1.CurrentX = i: Form1.CurrentY = -0.1 * C * (10 ^ (q - 1))
Form1.Print i
End If
Next i
Else
Form1.Scale (-4, 1.2 * C * (10 ^ q))-(1.5 * n, -1.2 * C * (10 ^ q))
Form1.Line (-2, 0)-(1.2 * n, 0)
Form1.Line (1.2 * n, 0)-(1.15 * n, 0.3 * C * 10 ^ (q - 1))
Form1.Line (1.2 * n, 0)-(1.15 * n, -0.3 * C * 10 ^ (q - 1))
For i = -2 To Int(1.1 * n)
Form1.Line (i, 0)-(i, 0.3 * C * (10 ^ (q - 1)))
If i <> 0 Then
Form1.CurrentX = i: Form1.CurrentY = -0.1 * C * (10 ^ (q - 1))
Form1.Print i
End If
Next i
End If
Form1.Line (0, 1.1 * C * (10 ^ q))-(0, -10 ^ (q - 1))
Form1.Line (0, 1.1 * C * (10 ^ q))-(0.3, 1.05 * C * (10 ^ q))
Form1.Line (0, 1.1 * C * (10 ^ q))-(-0.3, 1.05 * C * (10 ^ q))
For i = 0 To 10
Form1.Line (0, i * C * (10 ^ (q - 1)))-(0.2, i * C * (10 ^ (q - 1)))
Form1.CurrentX = 0.1: Form1.CurrentY = i * C * (10 ^ (q - 1))
Form1.Print i * C * (10 ^ (q - 1))
Next i
Form1.FillStyle = 0
For i = 1 To n
Form1.FillColor = QBColor(i Mod 16)
Form1.Line (i, num(i))-(i + 1, 0), , B
Next i
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?