vb.net毫秒函数 vb获取当前时间的毫秒数-成都快上网建站

vb.net毫秒函数 vb获取当前时间的毫秒数

VB.NET用TIMER控件

我使用Visual Basic 2008 编写

专注于为中小企业提供成都做网站、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宣威免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

1、新建2个窗体Form1和Form2

2、Form1窗体新建一个Button按扭和一个Timer1控件

3、打开Form1编写如下代码

Public Class Form1

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Form2.Show()

Me.Hide() '隐藏本窗体

Timer1.Enabled = False '使其只执行1次

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Timer1.Enabled = True '能使用 其实这个在属性窗口中更容易设置

Timer1.Interval = 2000 '毫秒 即2秒

End Sub

End Class

用VB.NET设计一个以秒为基本单位的表,并且显示在窗体上的步骤,并且给出关键代码

是我以前自己设计的用来测试自己点钞速度用的,希望是你需要的

以下是窗体的全部代码

Public Class Form1

Dim StartFlag As Boolean = False

Dim secon As Integer

Dim minut As Integer

'空格

Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp

If e.KeyCode = Keys.Space Then

If StartFlag Then

StartFlag = False

Timer1.Enabled = False

If Val(Strings.Right(Label1.Text, 2))  10 And Val(Strings.Right(Label1.Text, 2)) = 0 Then secon = 0 : minut = 0 : Label1.Text = "00:00" : Exit Sub

ListBox1.Items.Add(Label1.Text.ToString)

ListBox1.SelectedItem = ListBox1.Items.Count - 1

Label1.Focus()

Button1.Enabled = True

Label1.Text = "00:00"

secon = 0

minut = 0

Else

StartFlag = True

Timer1.Enabled = True

End If

End If

End Sub

'加载

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

ListBox1.Items.Clear()

Label1.Text = "00:00"

Button1.Enabled = False

secon = 0

minut = 0

Label1.Focus()

End Sub

'清空

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Button1.Enabled = False

ListBox1.Items.Clear()

Label1.Focus()

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

secon += 1

If secon = 60 Then

secon = 0

minut += 1

End If

Dim seconStr As String = secon

If seconStr.Length = 1 Then seconStr = "0" + seconStr

Dim minutStr As String = minut

If minutStr.Length = 1 Then minutStr = "0" + minutStr

Label1.Text = minutStr + ":" + seconStr

Label1.Focus()

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim SeconSun As Integer

If ListBox1.Items.Count  0 Then

For i = 0 To ListBox1.Items.Count - 1

Dim TemStr As String = ListBox1.Items.Item(i).ToString

Dim TemInt1 As Integer = Val(Strings.Right(TemStr, 2))

Dim TemInt2 As Integer = Val(Strings.Left(TemStr, 2))

Debug.Print(TemInt1.ToString)

Debug.Print(TemInt2.ToString)

SeconSun += TemInt1 + TemInt2 * 60

Debug.Print(SeconSun.ToString)

Next

TextBox1.Text = (SeconSun / ListBox1.Items.Count).ToString + "秒"

End If

Label1.Focus()

End Sub

End Class

怎样用vb.net做毫秒计时器(有没有什么类似于ccrptmr之类的控件)

不需要控件就可以,用多线程的方式实现,在窗体上放一个Label和一个button按钮,代码如下:

Imports System.Threading

Public Class Form1

Dim Start As Double

Dim td As Thread

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Label1.Text = "00:00:00 000"

Button1.Text = "开始"

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If Button1.Text = "开始" Then

Button1.Text = "结束"

Start = DateAndTime.Timer

td = New Thread(AddressOf fun1)

td.Start()

Else

Button1.Text = "开始"

td.Abort()

End If

End Sub

'定义一个线程

Private Sub fun1()

Dim elapsed As TimeSpan

Dim Dg_txt As New Dg(AddressOf txt)

Do

elapsed = TimeSpan.FromMilliseconds((DateAndTime.Timer - Start) * 1000)

Me.Invoke(Dg_txt, elapsed.ToString, Label1)

Thread.Sleep(100)

Loop

End Sub

'定义一个委托

Delegate Sub Dg(ByVal s As String, ByVal obj As Label)

Sub txt(ByVal s As String, ByVal obj As Label)

obj.Text = s

End Sub

End Class

vb.net毫秒计时器代码问题

elapsed.Milliseconds 获取毫秒。

每100毫秒,do中的代码执行一次,执行时间将大于100毫秒,这是产生误差的地方之一。invoke执行一个方法txt,必须等txt里面的代码运行完毕,方法才能返回,期间占用的时间全是“误差”。

无限循环,且没有退出机制,停不下来。


分享文章:vb.net毫秒函数 vb获取当前时间的毫秒数
网站网址:http://kswjz.com/article/dojjppp.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流