关于vb里timer的用法

用vb里的timer控件控制一个物体沿椭圆移动想象一下,就是做人造飞船围绕地球转动,怎么写?... 用vb里的timer控件控制一个物体沿椭圆移动
想象一下,就是做人造飞船围绕地球转动,怎么写?
展开
 我来答
主的仆人保罗
2009-06-23 · TA获得超过242个赞
知道小有建树答主
回答量:201
采纳率:0%
帮助的人:148万
展开全部
通过引发 Timer 事件,Timer 控件可以有规律地隔一段时间执行一次代码。

语法

Timer

说明

Timer 控件用于背景进程中,它是不可见的
************************以下是他的属性****************
Enabled 属性

返回或设置一个值,该值用来确定一个窗体或控件是否能够对用户产生的事件作出反应。

语法

object.Enabled [= boolean]

Enabled 属性的语法包含下面部分:

部分 描述
object 对象表达式,其值是“应用于”列表中的一个对象。如果 object 被省略,则与活动窗体模块相联系的窗体被认为是 object。
boolean 一个用来指定 object 是否能够对用户产生的事件作出反应的布尔表达式。

设置

boolean 的设置为:

设置 描述
True (缺省)允许 object 对事件作出反应。
False 阻止 object 对事件作出反应。

Enabled 属性示例
该例子使一个 CommandButton 控件有效而不管 TextBox 控件是否包含文本。要试用此例,先将下面的代码粘贴到带有 CommandButton 和 TextBox 控件的一个窗体的声明部分,然后按下 F5 键并在文本框中随意输入一些内容。

Private Sub Form_Load ()
Text1.Text = "" ' 清除文本框的内容。
Command1.Caption = "Save" ' 在按钮上放置标题。
End Sub

Private Sub Text1_Change ()
If Text1.Text = "" Then '查看文本框是否为空。
Command1.Enabled = False '使按钮无效。
Else
Command1.Enabled = True '使按钮有效。
End If
End Sub

Interval 属性

返回或设置对 Timer 控件的计时事件各调用间的毫秒数。

语法

object.Interval [= milliseconds]

Interval 属性语法有以下组成部分:

部分 描述
object 对象表达式,其值是“应用于”列表中的一个对象。
milliseconds 数值表达式,指定毫秒数,“设置值”中有详细说明,。

设置值

milliseconds 的设置值为:

设置值 描述
0 (缺省值)使 Timer 控件无效。
1 to 65,535 设置的时间间隔(以毫秒计),在 Timer 控件 Enabled 属性设置为 True 时开始有效,例如,10,000 毫秒等于 10 秒。最大值为 65,535 毫秒,等于 1 分钟多一些。

说明

可以在设计时或在运行时设置 Timer 控件的 Interval 属性。使用 Interval 属性时,请记住:

Timer 控件的 Enabled 属性决定该控件是否对时间的推移做响应。将Enabled 设置为 False 会关闭 Timer 控件,设置为 True 则打开它。当 Timer 控件置为有效时,倒计时总是从其 Interval 属性的设置值开始。

创建 Timer 事件程序用以告诉 Visual Basic 在每次 Interval 到时该做什么。

Interval 属性示例
这个例子可以调整窗体切换颜色的速度。要尝试这个例子,请将代码粘贴到包含 Timer 控件、HScrollBar 控件(水平滚动条)和 PictureBox 控件的窗体的声明部分,然后按 F5 键并单击滚动条。

Private Sub Form_Load ()
Timer1.Interval = 900 ' 设置时间间隔。
HScroll1.Min = 100 ' 设置最小值。
HScroll1.Max = 900 ' 设置最大值。
End Sub
Private Sub HScroll1_Change ()
' 根据滚动条的数值设置时间间隔。
Timer1.Interval = 1000 - HScroll1.Value
End Sub
Private Sub Timer1_Timer ()
' 在红色和蓝色之间切换背景色。
If Picture1.BackColor = RGB(255, 0, 0) Then
Picture1.BackColor = RGB(0, 0, 255)
Else
Picture1.BackColor = RGB(255, 0, 0)
End If
End Sub
wys_sans
2009-06-23 · TA获得超过4008个赞
知道大有可为答主
回答量:2474
采纳率:0%
帮助的人:1076万
展开全部
下面是一个简单PSet函数画椭圆的方法,你也可以用一个Shape来作模拟。用它的(left,top)来替换(x,y),效果是一样的。

Const PI = 3.14159265
Dim E As Integer '计数变量
Dim R1, R2 As Integer

Private Sub Form_Load()
R1 = 50 '长轴
R2 = 100 '短轴
Timer1.Interval=100
End Sub

Private Sub Timer1_Timer()
Dim x As Single, y As Single
x = 100 + Cos(E * PI / 180) * R1
y = 100 + Sin(E * PI / 180) * R2
Form1.PSet (x, y)
E = E + 1
If E >= 360 Then E = 0
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式