新手请叫各位大侠一个弱智的问题,在进行数据查询的时候,能否在取出一条数据之后让指针停留一段时间后再取下一条记录啊?或者实现在从数据库中读出数据并且显示到MSFlexgrid控件的相应的单元格中时候实现按行来填充数据的效果,不要一次性填充11行的记录大哥,似乎用你说的方法可以实现上面的效果,但是发觉DoEvents函数在让出操作系统的控制权方面难以控制
谁能帮忙调一下啊~~
Private Function read_display()'从数据库中读出数据并且显示到MSFlexgrid控件的相应的单元格中For i = 0 To 10 Step 1 '每次取出11条记录,并显示到MSFlexgrid控件的相应的单元格中
If rs1.EOF = False Then
If rs1.Fields(0) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 0) = rs1.Fields(0)
'DoEvents
End If
If rs1.Fields(1) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 1) = rs1.Fields(1)
'DoEvents
End If
If rs1.Fields(2) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 2) = rs1.Fields(2)
'DoEvents
End If
If rs1.Fields(3) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 3) = rs1.Fields(3)
'DoEvents
End If
End If
If rs2.EOF = False Then
If rs2.Fields(0) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 4) = rs2.Fields(0)
End If
If rs2.Fields(1) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 5) = rs2.Fields(1)
End If
If rs2.Fields(2) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 6) = rs2.Fields(2)
End If
If rs2.Fields(3) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 7) = rs2.Fields(3)
End If
End If
'DoEvents
rs1.MoveNext
If rs1.EOF = True Then
rs1.MoveFirst
End If
rs2.MoveNext
If rs2.EOF = True Then
rs2.MoveFirst
End If
DoEvents
Next
End Function似乎上面的DoEvents函数所放的位置都能实现我希望有的功能,但是只是我在下面的timer控件中调用该函数时不能把所有的数据都显示出来Private Sub Timer1_Timer() '定时器函数Timer1_Timer(),实现分时间段显示显示数据库中数据
Dim dateTmp As Date '定义定时器的时间
'Dim data2 As Date
dateTmp = Now()
If DateDiff("s", date1, dateTmp) = 5 Then
Call read_display '调用xunhuan函数,从数据库中读出数据并且显示
date1 = dateTmp
End If
'data2 = Now
'If data2 = #8:05:00 PM# Then
'End
'End If
End SubPrivate Sub wait()'也可在上面DoEvents处用这个等待函数替代控制等待的时间
Dim dblEndTime As Double
dblEndTime = Timer + (需要等待的秒数)
Do While dblEndTime > Timer
'不做任何事情,仅仅允许
'其它应用程序处理它们的事件。
DoEvents
Loop
End Sub
哪位能帮忙调一下啊~~~
在线等,谢谢~~~
谁能帮忙调一下啊~~
Private Function read_display()'从数据库中读出数据并且显示到MSFlexgrid控件的相应的单元格中For i = 0 To 10 Step 1 '每次取出11条记录,并显示到MSFlexgrid控件的相应的单元格中
If rs1.EOF = False Then
If rs1.Fields(0) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 0) = rs1.Fields(0)
'DoEvents
End If
If rs1.Fields(1) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 1) = rs1.Fields(1)
'DoEvents
End If
If rs1.Fields(2) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 2) = rs1.Fields(2)
'DoEvents
End If
If rs1.Fields(3) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 3) = rs1.Fields(3)
'DoEvents
End If
End If
If rs2.EOF = False Then
If rs2.Fields(0) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 4) = rs2.Fields(0)
End If
If rs2.Fields(1) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 5) = rs2.Fields(1)
End If
If rs2.Fields(2) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 6) = rs2.Fields(2)
End If
If rs2.Fields(3) <> "" Then
'DoEvents
MSHF.TextMatrix(i, 7) = rs2.Fields(3)
End If
End If
'DoEvents
rs1.MoveNext
If rs1.EOF = True Then
rs1.MoveFirst
End If
rs2.MoveNext
If rs2.EOF = True Then
rs2.MoveFirst
End If
DoEvents
Next
End Function似乎上面的DoEvents函数所放的位置都能实现我希望有的功能,但是只是我在下面的timer控件中调用该函数时不能把所有的数据都显示出来Private Sub Timer1_Timer() '定时器函数Timer1_Timer(),实现分时间段显示显示数据库中数据
Dim dateTmp As Date '定义定时器的时间
'Dim data2 As Date
dateTmp = Now()
If DateDiff("s", date1, dateTmp) = 5 Then
Call read_display '调用xunhuan函数,从数据库中读出数据并且显示
date1 = dateTmp
End If
'data2 = Now
'If data2 = #8:05:00 PM# Then
'End
'End If
End SubPrivate Sub wait()'也可在上面DoEvents处用这个等待函数替代控制等待的时间
Dim dblEndTime As Double
dblEndTime = Timer + (需要等待的秒数)
Do While dblEndTime > Timer
'不做任何事情,仅仅允许
'其它应用程序处理它们的事件。
DoEvents
Loop
End Sub
哪位能帮忙调一下啊~~~
在线等,谢谢~~~
解决方案 »
- 新手菜鸟问题,怎么让我自己编写的OCX控件在最后使用中click mouseup 之类的很简单的事件啊
- 正确密码无法登陆
- ▲△▲△为什么select语句的执行速度在MySQL和SQL Server中要比Access慢那么多呢?
- 在VB中如何将数据库内容存到带有记忆功能的barcode刷卡机里面去啊?
- 如何以com+方式注册组建(用vb程序配置,不是手工配也不是用regsvr32)
- 再提一问题,今天结掉剩下的所有分(今天第三帖,前帖已结)
- 能不能改变combobox的向下三角形按扭的显示的颜色?
- 谁帮我看下这段程序excel中宏
- vwd0的网站管理工具中无法创建新用户
- ocx控件中为什么有些属性无法设置?
- 软件价格
- VB程序员该走那条路?
dim longtick
longtick=gettickount()
while gettickcount-longtick<200
wend还需调用gettickcount的API函数
那怎么实现啊,API我不是很熟啊~~能不能说得具体啊
我的这个函数经常用,献给你了,他能解决您的CPU占有率仅达到0.1%。因为sleep函数的占有率几乎吃掉了全部CPU,因而才写了这个函数。Public Sub Sleep_yh(TimeSecond As Integer) 'TimeSecond暂停时间秒
Dim nowTime
nowTime = Timer
Do While Timer < nowTime + TimeSecond '等待TimeSecond秒
DoEvents ' 将控制让给其他程序。
Loop
End Sub