VB中如何编写一个程序,实现如图所示竖直方向的滑块上下运动,带动水平上的滑块左右运动,请高手帮帮忙

这是个机械运动的动画,必须是竖直方向的滑块上下运动,再通过连杆带动滑块2左右运动... 这是个机械运动的动画,必须是竖直方向的滑块上下运动,再通过连杆带动滑块2左右运动 展开
 我来答
790942000
2011-04-10 · TA获得超过231个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:102万
展开全部

如图添加1个Timer控件Timer1 ;1个HScrollBar控件HScroll1 ;1个VScrollBar控件VScroll1

然后复制下列代码到代码框

Private Sub Form_Load()

Timer1.Interval = 100

Timer1.Enabled = True

End Sub

Private Sub Timer1_Timer()

HScroll1.Max = VScroll1.Max

HScroll1.Min = VScroll1.Min

HScroll1.Value = VScroll1.Max - VScroll1.Value

End Sub

追问
我要的不是通过滑动条来实现的啊,是先要画出图形再通过timer来实现让它动起来的,能加你QQ详细询问一下吗?
追答
Q Q:790942000   现在没空,等周末再说
kas68310
2011-04-09 · TA获得超过3636个赞
知道大有可为答主
回答量:1468
采纳率:33%
帮助的人:1162万
展开全部
你准备用鼠标拖动竖直滑块还是用一个按钮启动?
你得拉一个timer控件进来,当你的竖直滑块进入运动状态时启动时钟,时钟记录以下两个坐标参数:
上一个tick时滑块(竖)的Y坐标(top值)
上一个tick时滑块(横)的X坐标(left值)

那么关系就出来了,获取当前tick的Y-top,用将其差值(+/-)给x-left加上(+/-).
在滑块(竖)退出运动状态后关闭时钟.时钟的节点可考虑调小一点.但也别弄到 1秒/千..

当然不考虑程序占用资源的话,也可以程序一打开就启动时钟...
更多追问追答
追问
我要用一个按钮启动的,我是想把那两条点画线的交点作为坐标原点再根据条件做的,可是我不知道该怎么弄才行,请问怎么选定一个坐标原点啊
追答
不用选定坐标原点...你拖放控件时会有一个loction值[top,left](好像是这么个写法..你看一下),
这个就是控件在距上/左的距离值.直接用这个判断就行了.否则再定位很麻烦.
p.s.
忘了说,考虑到窗体整个被拖动的问题,你可以用窗体本身的TOP/LEFT做为参照,看窗体有没有被移动.也就是说,当控件竖相于窗体发生移动时,才改变滑块横的坐标.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ztw1122
2011-04-10 · TA获得超过1088个赞
知道小有建树答主
回答量:2382
采纳率:80%
帮助的人:931万
展开全部
这个啊 ,VB有种滑块,就像调音量的那种,拉俩出来,竖的移动量=横的移动量就是了
追问
你说的是滑动条吧,我要的不是那个啊
追答
对于这个问题偶进行了编程,实现了你说的问题,不过只有X轴的OK了,Y轴嗨有些问题  
+q759812246 发你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tian_yf
2011-04-09 · TA获得超过599个赞
知道小有建树答主
回答量:365
采纳率:100%
帮助的人:470万
展开全部
设x到y长度为c,则x=sqrt(c*c-y*y)
用for循环,
y从c到-c时,step取负值
y从-c到c时,step取正值
追问
还是不太清楚
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式