VB中通过列表框设计列表项画点,画线,画圆,并通过单击设计的列表项

VB中通过列表框设计列表项画点,画线,画圆,并通过单击设计的列表项,第1张

Option Explicit
Private Sub Form_Load()
List1AddItem "画点", 0
List1AddItem "画线", 1
List1AddItem "画圆", 2
End Sub
Private Sub List1_Click()
    Dim x As Double, y As Double
    x = MeScaleWidth / 2
    y = MeScaleHeight / 2
    
    If List1ListIndex = 2 Then MeCircle (x, y), 500, vbBlue
    If List1ListIndex = 1 Then MeLine (x, y)-(0, 0), vbGreen
    If List1ListIndex = 0 Then
        DrawWidth = 10
        MePSet (x, y), vbRed
    End If
        
End Sub

咋打开不说了哈……直接行读入,然后对字符串用逗号分隔成三部分之后分别存到3个变量数组里面。
然后设变量k是小方格的单位长度。可以通过改变k的值放大缩小。
然后……
sub
draw()
for
i
=
1
to
n
'输入的行数,可以通过读入时累加得到
picture1fillcolor
=
color(2)
picture1line
((x-1)k,(y-1)k)
-
(x-1,y-1),,b
'b
=
box,控制画矩形。
next
end
sub
还有其他问题就是k要赋初值……

point 不是画点的语句啊
返回在 Form 或 PictureBox 上所指定磅的红-绿-蓝 (RGB) 颜色。不支持命名参数。
语法
objectPoint(x, y)
Point 方法的语法包含下列部分:
部分 描述
object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,带有焦点的 Form 象缺省为 object
x, y 必需的。均为单精度值,指示 Form 或 PictureBox 的 ScaleMode 属性中该点的水平(x-轴)和垂直(y-轴)坐标。必须用括号包括这些值。
说明
如果由 x 和 y 坐标所引用的点位于 object 之外,Point 方法将返回 -1。
画点用pset方法
点的大小由窗体或picture控件的DrawWidth属性决定

送你一段代码。自己研究~~控件都能看的懂!
这是sin的图~
Private Sub Command1_Click()
Const pi = 314159
Dim x As Single, a As Single, w As Single, f As Single, y As Single
Dim cz As Single, zz As Single
Picture1Scale (-5, 10)-(10, -10)
Picture1DrawWidth = 3
Picture1Line (-5, 0)-(10, 0)
Picture1Line (0, -10)-(0, 10)
Picture1Line (0, 10)-(02, 95)
Picture1Line (10, 0)-(95, 02)
Picture1Line (10, 0)-(95, -02)
a = Val(Text1Text)
w = Val(Text2Text)
f = Val(Text3Text)
Picture1ForeColor = RGB(255, 0, 0)
Picture1DrawWidth = 2
cz = -f / w
zz = (2 pi - f) / w
For x = cz To zz Step (zz - cz) / 200
y = a Sin(w x + f)
Picture1PSet (x, y)
Next x
End Sub
Private Sub Command2_Click()
Picture1Cls
Picture1Scale (-5, 10)-(10, -10)
Picture1ForeColor = RGB(255, 255, 0)
Picture1DrawWidth = 3
Picture1Line (0, 10)-(-02, 95)
Picture1Line (0, 10)-(02, 95)
Picture1Line (10, 0)-(95, 02)
Picture1Line (10, 0)-(95, -02)
Picture1Line (-5, 0)-(10, 0)
Picture1Line (0, -10)-(0, 10)
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Form_Load()
Text1Text = 1
Text2Text = 1
Text3Text = 0
End Sub
Private Sub Text1_LostFocus()
If Abs(Val(Text1Text)) > 9 Then
Text1Text = 1
End If
End Sub
Private Sub Text2_LostFocus()
If Abs(Val(Text2Text)) > 9 Then
Text2Text = 1
End If
End Sub

圆和点其实是一样的

Private Sub Command1_Click()
    MeDrawWidth = 10
    MePSet (50, 50)
End Sub

下面是两点间划线的程序,只要两点重合就可以了。
Form1DrawStyle = 0
Line (x1, y1)-(x2, y2)
即可
画点划线的话可以使Form1DrawStyle = 3,这个属性的值可以从1取到6,你可以取不同值看效果


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13130204.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-07
下一篇 2023-06-07

发表评论

登录后才能评论

评论列表(0条)

保存