注册 登录
编程论坛 VB6论坛

datagrid 列宽不能固定,请教高手

feixuenxb 发布于 2013-10-31 14:51, 471 次点击
DataGrid1.Columns(0).Width = 1600
DataGrid1.Columns(2).Width = 1500
DataGrid1.Columns(4).Width = 1700
DataGrid1.Columns(3).Width = 8000
DataGrid2.Columns(4).Width = 7000
DataGrid2.Columns(1).Width = 1600
DataGrid2.Columns(2).Width = 1600

在设置好列宽后,为了刷新时变化的数据加了下面的timer事件,但一刷新后列宽变成了默认列宽



Private Sub Timer1_Timer()

Adodc1.Refresh
Adodc2.Refresh
DataGrid1.Refresh
DataGrid2.Refresh

End Sub


怎么解决,谢谢
4 回复
#2
feixuenxb2013-10-31 15:49
怎么没有老师答复呀??????
#3
风吹过b2013-10-31 16:36
你 把 设置列宽的命令 ,做成一个 过程,
然后刷新后再调用一下就是了。
#4
feixuenxb2013-11-01 08:40
我像你说的这样做了,但是这样每执行一次timer会一闪一闪
#5
风吹过b2013-11-01 10:17
本来刷新数据就是会闪了。
要么你自己手动控制闪烁,
在刷新数据前,把这个控件隐藏一下,然后再刷新,设宽度,再显示,这么只闪一次。

而不隐藏,直接刷新,设宽度,会闪二次,闪二次的时间比 闪一次的时候更短。

不过,我没用过 DataGrid ,一般如果显示一些数据,一般我用 listview 控件。
1