vb 画直线的问题 高手帮帮忙

PrivateSubCommand2_Click()XH=Label6.CaptionIfXH=1Thenfx=0:fy=0ElseIfXH>=2Thenfx=x:fy=... Private Sub Command2_Click()
XH = Label6.Caption
If XH = 1 Then
fx = 0: fy = 0
ElseIf XH >= 2 Then
fx = x: fy = y
End If
x = Val(Text1) '* 0.005
y = Val(Text2) '* 0.01
If Me.Combo1.ListIndex = 0 Then
Picture1.Line (fx, fy)-(x, y)
Picture1.PSet (x, y), vbCyan
Picture1.PSet (fx, fy), vbCyan
Picture1.CurrentX = x: Picture1.CurrentY = y: Picture1.Print "(" & x & "," & y & ")"
Picture1.CurrentX = fx: Picture1.CurrentY = fy: Picture1.Print "(" & fx & "," & fy & ")"
End If
Picture1.DrawWidth = 2
XH = XH + 1
Label6.Caption = XH

End Sub
上面是我的一个程序 要求是第一次点的时候 是原点作为起点坐标 第二次点的时候 是以第一次的终点坐标为起点
但是我第二次得时候老是以原点为起点 这是怎么回事啊? 标签caption默认为1
展开
 我来答
Excel开发
2011-05-06 · TA获得超过2915个赞
知道大有可为答主
回答量:1989
采纳率:53%
帮助的人:1031万
展开全部
程序最前面加上这一句:
Dim x, y As Integer

为什么不按我的方法试一下?只要把Dim x, y As Integer 这个定义放在程序的最顶端,在Private Sub Command2_Click()之前。
你的程序问题出在,每次按Command2按钮后,x,y的初始值都为0,所以永远从原点开始划线,只有把变量定义放到模块外面,这个变量中上次Command2事件中得到的值才能保存。
zhaowangliang
2011-05-06 · TA获得超过575个赞
知道小有建树答主
回答量:485
采纳率:0%
帮助的人:514万
展开全部
Picture1.Line (fx, fy)-(x, y)
改为 Picture1.Line -(x, y)
line默认就是上次的坐标为起点的
追问
还  是不行啊  
第一次起点在y轴上了
追答
第一次,没有规定初始点,默认是(0,0)
你在一开始先初始化好了
Picture1.CurrentX =fx
Picture1.Currenty = fy
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式