用MSHFLEXGRID显示从数据库中取出的数据(1000行以上)则出现屏幕不断闪烁情况

jtycgs 2004-09-17 11:40:20
小菜请教:用MSHFLEXGRID显示从数据库中取出的数据时如行数较多(1000行以上)则出现屏幕不断闪烁情况直到全部数据填充完才停止(行数少可以),请教大侠是不是有什么更好的显示方式或者有什么解决办法,谢谢各位大哥.
代码如下:
Set conpayrs = New ADODB.Recordset
Set db1 = New ADODB.Connection
db1.Open ConStra
conpayrs.Open "SELECT * FROM xs200409 order by fhrq desc", db1, adOpenStatic, adLockOptimistic
createMSHFLEXGRID1
MSHFLEXGRID1.Row = MSHFLEXGRID1.Row
MSHFLEXGRID.Col = 1
If conpayrs.RecordCount <> 0 Then
For r = 1 To conpayrs.RecordCount
With conpayrs
MSHFLEXGRID.rows = MSHFLEXGRID1.rows + 1
MSHFLEXGRID.Col = 1: MSHFLEXGRID1.Text = Format(!fhrq, " yyyy/mm/dd")
MSHFLEXGRID.Col = 2: MSHFLEXGRID1.Text =!fhdw
MSHFLEXGRID.Col = 3: tjgrid1.Text = !fhsl
MSHFLEXGRID.Col = 4: tjgrid1.Text = Format(!fhje, "###,###,##0.00")
MSHFLEXGRID1.Row = MSHFLEXGRIDtjgrid1.Row + 1
MSHFLEXGRID1.Col = 1
.MoveNext
End With
Next
End If
...全文
205 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjyqhyx 2005-04-17
  • 打赏
  • 举报
回复
可是用绑定的办法,如何设置数值型的对齐方式呢?
默认是左对齐的,可是数值就是右对齐的。如何设置呢?
yingxiangchen 2004-12-25
  • 打赏
  • 举报
回复
我建议最好使用MSHFLEXGRID的DataSouce属性来获得数据,非常快,不闪
zwjleo 2004-12-25
  • 打赏
  • 举报
回复
我写MSHFLEXGRID的时候用TEXTMETRIX这个属性来填充表格的
10000多条记录写进去也没有什么闪
最多等了3秒多一点
guxizhw 2004-09-20
  • 打赏
  • 举报
回复
我试过用visible=false visible=true来搞定的,时间不长的话可以试试:)
jtycgs 2004-09-19
  • 打赏
  • 举报
回复
先谢谢楼上兄弟,我去试一下
RUKYO 2004-09-18
  • 打赏
  • 举报
回复
Redraw 属性示例
下面的代码关闭重绘,对 MSHFlexGrid 的内容作了几次更改,然后打开重绘来显示结果。

注意 如果正在使用 MSFlexGrid,用“MSFlexGrid1”代替“MSHFlexGrid1”。

Dim i As Integer
' 冻结 MSHFlexGrid 避免闪烁。
MSHFlexGrid.Redraw =False
' 更新 MSHFlexGrid 内容
For i =MSHFlexGrid1.FixedRows To MSHFlexGrid1.Rows - 1
MSHFlexGrid1.TextMatrix(i, 1) =GetName(i, 1)
MSHFlexGrid1.TextMatrix(i, 2) =GetName(i, 2)
Next
' 显示结果
MSHFlexGrid1.Redraw =True

RUKYO 2004-09-18
  • 打赏
  • 举报
回复
Redraw 属性


返回或设置一个值,决定 MSHFlexGrid 是否应该在每次更改后自动地重绘。

语法

object.Redraw [=Boolean]

Redraw 属性的语法包含如下部分:

部分 描述
object 一个对象表达式,其值为“应用于”列表中的一个对象。
Boolean 一个布尔表达式,指定 MSHFlexGrid 是否应该在每次更改后自动地重绘。


设置值

对 Boolean 的设置如下所示:

部分 描述
True MSHFlexGrid 在每次更改后自动地重绘。这是缺省设置。
False MSHFlexGrid 在每次更改后不重绘。


说明

可以在代码中使用这一属性,来减少当 MSHFlexGrid 的内容进行广泛更新时的闪烁。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧