2024年5月31日发(作者:)
Visual Basic 上机操作
一、运用Pset方法绘制Sin(x)曲线
Private Sub Form_Paint()
p = 3.1415926 * 4
r = ScaleWidth / p
For j = 1 To 3
For t = 1 To p Step 0.00001
x = t * r
y = j * 1000 + scaleheigh / 2 + 700 * Cos(2 * t)
PSet (x, y), RGB(255, j * 80, 0)
Next t
Next j
End Sub
二、用PSET 语句绘出调色板
Private Sub Form_Paint()
For X = 2000 To 7000
For Y = 1000 To 6000
R = (X - 2000) / 20
G = (Y - 1000) / 20
B = 255 - (R + G) / 2
PSet (X, Y), RGB(R, G, B)
Next Y
Next X
End Sub
三、画宽为5像素的红色水平线。
Private Sub Form_Paint()
DrawWidth = 5
For x = 100 To 7000
PSet (x, 1000), RGB(255, 0, 0)
Next x
End Sub
四、画7条依次变宽的红色水平线。
Private Sub Form_Paint()
For i = 1 To 7
DrawWidth = I
‘改变线宽
For x = 100 To 8000
PSet (x, i * 800), RGB(255, 0, 0)
Next x
Next i
End Sub
五、绘出6条不同样式的直线
Private Sub Form_Paint()
For i = 1 To 6
DrawStyle = I
‘改变线型
a = " 线型" & i & ":"
Y = (300 * I ) + 330
X = 300
PSet (100, Y ), QBColor(8 )
Print a;
Line (400 + TextWidth(a ) + 50, Y)-(6000, Y ),
RGB(255, G, 0 )
Next i
End Sub
1
六、绘出不同填充样式的距形
P139--(7-4).
Private Sub Form_Paint ( )
BackColor = vbWhite
For I = 1 To 7
FillStyle = I
X = (1000 * I) + 330
Line (X, 150)-(X + 700, 850), , B
A = "填充式样" & I
CurrentY = 1000
CurrentX = X - TextWidth(A) / 2 + 400
Print A
Next I
End Sub
七、正弦曲线、余弦曲线
Private Sub Form_Paint( )
ScaleMode = 6
‘以毫米为单位
Dim mpmm As Single
Const p = 3.1415926
mpmm = 30 / p * 4
DrawWidth = 3
‘线宽3个像素
Line (0, 100)-(400, 100), RGB(255, 0, 0)
Line (40, 0)-(40, 300), RGB(255, 0, 0)
DrawWidth = 1
For x = 0 To 400 Step 10 ‘
绘竖直网格线
Line (x, 0)-(x, 300)
Next x
For x = 20 To 400 Step 20
‘标记刻度
CurrentX = x – 1
CurrentY = 102
Print x - 40
Next x
For y = 0 To 300 Step 10
‘绘水平网格线
Line (0, y)-(400, y)
Next y
For y = 10 To 200 Step 10
‘标记刻度
CurrentX = 5
CurrentY = y
Print 100 - y
Next y
For t = 1 To 4 * p Step 0.0001
Y1 = 20 * Cos(2 * t) + 100
x = t * mpmm
PSet (x, Y1), RGB(255, 0, 0)
Y2 = 30 * Sin(2 * t) + 100
PSet (x, Y2), RGB(0, 0, 250)
y3 = 120 * Sin(2 * t) * Cos (2 * t ) + 100
If y3 > 100 Then
y3 = 200 - y3
End If
PSet (x, y3), RGB(0, 0, 0)
Next t
End Sub
八、运用Line方法绘制的彩盘
Private Sub Form_Paint()
X1 = 4000
‘确定圆心
Y1 = 4000
P = 3.1415926535 * 2
R = 1500
‘确定半径
For B = 0 To P Step 0.00001
X2 = R * Sin(B) + X1
‘圆周的一点的坐标
Y2 = R * Cos(B) + Y1
R1 = (X2 / (X1 + R)) * 255
‘配色
G1 = (Y2 / (Y1 + R)) * 255
B1 = 255 - (R1 + G1) / 2
Line (X1, Y1)-(X2, Y2), RGB(R1, G1, B1)
‘画线
Next B
End Sub
2
九、可改变大小的平行四边形
Private Sub Form_Paint()
xz = ScaleWidth / 2
‘左边界中点
yz = ScaleHeight / 2
‘右边界中点
Line (0, yz)-(xz, 0)
Line -(ScaleWidth, yz)
Line -(xz, ScaleHeight)
Line -(0, yz)
CurrentX = xz - xz / 4
‘定当前位置
CurrentY = yz
Print "可改变大小的平行四边形"
End Sub
Private Sub Form_Resize()
Refresh
‘改变窗体大小时,对所有对象通过print事件重画
End Sub
十、正弦曲线(P44)
Private Sub Form_Paint()
ScaleWidth = 20
‘X轴20等分
ScaleHeight = 12 ‘
Y轴12等分
ScaleTop = -ScaleHeight / 2 ‘
定原点
ScaleLeft = -ScaleWidth / 2
Line (-10, 0)-(10, 0), vbBlue
‘画Y轴
Line (0, 6)-(0, -6), vbBlue ‘
画X轴
For yt = -6 To 6
‘以下为Y轴刻度单位
CurrentX = 0.2
CurrentY = yt
If yt <> 0 Then
Print -yt
End If
Next yt
For xt = -8 To 8
‘以下为X轴刻度单位
CurrentX = xt - 0.3: CurrentY = 0.1
Print xt
Line (xt, 0)-(xt, 0.1), vbBlue
Next xt
P= 3.1415926535
For xt = -10 To 10 Step 0.00005
PSet (xt, -2 * Sin(xt * P)), vbRed
Next xt
CurrentX = -8
CurrentY = -4
Print "正弦曲线"
End Sub
3


发布评论