vb点虐 时间统计的简单介绍

VB.NET,如何用TIMER控件计时

这种功能用不到TIMER,TIMER控件用在这种地方也不适合。(假如你所统计的时间很短,在几分中内话,可以使用,假如你统计的时间很长:几小时、几天几夜,建议改用以下方式):

成都创新互联公司长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为安远企业提供专业的成都网站设计、成都做网站安远网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

在你需要开始计时的地方加入一个记录当前时间,在你想结束的地方也得到一个当前时间。然后将两个时间相减。

希望以上思路可以帮到你。

vb点虐 时间统计问题

一楼风中的奶牛的做法很棒,建议楼主采纳他的回答。

只是其中有一个Bug,就是“倒数第二次累计分钟数为59,累计秒数达到60的时候,会出现**:60:**”。例如{"10:57:35", "2:02:51"},我这里做了修改,供参考。

另外,AddByInts中不需要进行循环和Select判断,可以简化。

同时,为了说明类和结构的关系,这里改用类。

也请一楼风中的奶牛勿怪罪在下啊!

Public Class Form1

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

'Dim str As String() = {"10:30:35", "2:02:51", "17:00:35", "2:02:51"}

Dim str As String() = {"10:57:35", "2:02:51"}

Dim time As TimeSerial = New TimeSerial

For Each dt As String In str

time.Add(dt)

Next

MsgBox(time.ToString)

End Sub

End Class

Public Class TimeSerial

Public Hour As Integer ' 时间的小时部分

Public Minute As Integer ' 时间的分钟部分

Public Second As Integer ' 时间的秒钟部分

' 合并添加新的时间值

' param name="value"文本时间格式(00:00:00)/param

Public Sub Add(ByVal value As String)

Dim arr As String() = Split(value, ":")

Dim dts(arr.Length - 1) As Integer

For i As Integer = 0 To arr.Length - 1

dts(i) = CInt(Val(arr(i)))

Next

AddByInts(dts)

End Sub

' 合并添加新的时间值

' param name="value"时间值(仅计算:时、分、秒)/param

Public Sub Add(ByVal value As Date)

Dim dts(2) As Integer

dts(0) = value.Hour

dts(1) = value.Minute

dts(2) = value.Second

AddByInts(dts)

End Sub

Private Sub AddByInts(ByVal value As Integer())

Second += value(2)

If Second = 60 Then

Minute += Int(Second / 60)

Second = Second Mod 60

End If

Minute += value(1)

If Minute = 60 Then

Hour += Int(Minute / 60)

Minute = Minute Mod 60

End If

Hour += value(0)

End Sub

' 获取时间的文本格式(00:00:00)

Public Overrides Function ToString() As String

Return Hour ":" Minute ":" Second

End Function

End Class

vb点虐 统计时间段内数据库字段金额和

加一个按钮,代码如下:

Imports System.Data.OleDb

Public Class Form1

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

Dim myConn As OleDbConnection = New OleDbConnection '声明并实例化数据库连接对象

Dim myadpt As New OleDbDataAdapter '声明并实例化数据适配器对象

Dim myds As New DataSet '声明并实例化记录集对象

Dim myConnection As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Application.StartupPath "\DB\SJ.mdb" '数据库连接字符串

myConn.ConnectionString = myConnection '设置数据库连接对象的数据库连接字符串属性

myConn.Open() '启动数据库连接

myadpt.SelectCommand = New OleDbCommand '声明数据适配器的查询命令对象

myadpt.SelectCommand.CommandText = "select sum(支出金额) as 支出金额 from zcb where 支出时间 like '" Text1.Text "%' " '给数据适配器的查询命令属性赋值

myadpt.SelectCommand.Connection = myConn '设置据适配器与数据库连接对象的连接

myadpt.Fill(myds)

Text13.Text = myds.Tables(0).Rows(0)("支出金额")

End Sub

End Class


本文名称:vb点虐 时间统计的简单介绍
网址分享:http://ybzwz.com/article/ddsdcgg.html