以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  有关窗体闪烁问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=14732)

--  作者:baoxyang
--  发布时间:2011/11/30 11:16:00
--  有关窗体闪烁问题

forms("车辆回车确认").stopRedraw
Dim ss As String = "select * from {车辆配送表} where [状态] = \'出车完成\'"
Tables("车辆回车确认_Table1").fill(ss,"baox",False)
Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间" 
 Dim str1 As String = "运输单号,90|运输类型,60|状态,60|车牌号,70|司机姓名,60|计划单号,80|待运单号,80|出车时间,80|回车时间,80|出发地址,100|目的地址,100|收货单位,70|实际运量,70|实际件数,70|车型,60|发货通知号,70|货物名称,60|路桥费,60|公里数,60"
 Functions.Execute("显示列",Tables("车辆回车确认_Table1"),str1)
forms("车辆回车确认").ResumeRedraw

 

车辆回车确认_Table1表看到明显的闪烁。这个问题如何解决?谢谢!!

 


--  作者:狐狸爸爸
--  发布时间:2011/11/30 11:19:00
--  

forms("车辆回车确认").stopRedraw

Tables("车辆回车确认_Table1").StopREdraw
Dim ss As String = "select * from {车辆配送表} where [状态] = \'出车完成\'"
Tables("车辆回车确认_Table1").fill(ss,"baox",False)
Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间"
Dim str1 As String = "运输单号,90|运输类型,60|状态,60|车牌号,70|司机姓名,60|计划单号,80|待运单号,80|出车时间,80|回车时间,80|出发地址,100|目的地址,100|收货单位,70|实际运量,70|实际件数,70|车型,60|发货通知号,70|货物名称,60|路桥费,60|公里数,60"
Functions.Execute("显示列",Tables("车辆回车确认_Table1"),str1)

Tables("车辆回车确认_Table1").ResumeRedraw
forms("车辆回车确认").ResumeRedraw


--  作者:baoxyang
--  发布时间:2011/11/30 11:28:00
--  

Tables("车辆回车确认_Table1").StopREdraw
 

Tables("车辆回车确认_Table1").ResumeRedraw

加上也是一样的。

可能是Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间" 有关。去掉不那么闪哦。


--  作者:狐狸爸爸
--  发布时间:2011/11/30 11:30:00
--  

收到,我有空抽查一下。

另外看看是不是你的显示列这个自定义函数的代码有问题。

也可以尝试换换代码位置:

 

forms("车辆回车确认").stopRedraw

Tables("车辆回车确认_Table1").StopREdraw
Dim ss As String = "select * from {车辆配送表} where [状态] = \'出车完成\'"
Tables("车辆回车确认_Table1").fill(ss,"baox",False)
Dim str1 As String = "运输单号,90|运输类型,60|状态,60|车牌号,70|司机姓名,60|计划单号,80|待运单号,80|出车时间,80|回车时间,80|出发地址,100|目的地址,100|收货单位,70|实际运量,70|实际件数,70|车型,60|发货通知号,70|货物名称,60|路桥费,60|公里数,60"
Functions.Execute("显示列",Tables("车辆回车确认_Table1"),str1)

Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间"

Tables("车辆回车确认_Table1").ResumeRedraw
forms("车辆回车确认").ResumeRedraw


--  作者:baoxyang
--  发布时间:2011/11/30 11:39:00
--  
以下是引用狐狸爸爸在2011-11-30 11:30:00的发言:

收到,我有空抽查一下。

另外看看是不是你的显示列这个自定义函数的代码有问题。

也可以尝试换换代码位置:

 

forms("车辆回车确认").stopRedraw

Tables("车辆回车确认_Table1").StopREdraw
Dim ss As String = "select * from {车辆配送表} where [状态] = \'出车完成\'"
Tables("车辆回车确认_Table1").fill(ss,"baox",False)
Dim str1 As String = "运输单号,90|运输类型,60|状态,60|车牌号,70|司机姓名,60|计划单号,80|待运单号,80|出车时间,80|回车时间,80|出发地址,100|目的地址,100|收货单位,70|实际运量,70|实际件数,70|车型,60|发货通知号,70|货物名称,60|路桥费,60|公里数,60"
Functions.Execute("显示列",Tables("车辆回车确认_Table1"),str1)

Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间"

Tables("车辆回车确认_Table1").ResumeRedraw
forms("车辆回车确认").ResumeRedraw

这样解决了闪烁的问题,但表的光标不是在第一列位置了。

但加入Tables("车辆回车确认_Table1").LeftVisibleCol = Tables("车辆回车确认_Table1").Cols("运输单号").Index 又会闪了。

[此贴子已经被作者于2011-11-30 11:39:57编辑过]

--  作者:baoxyang
--  发布时间:2011/11/30 11:43:00
--  

Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间"

 

表的光标会默认为“出车时间”列上了。


--  作者:baoxyang
--  发布时间:2011/11/30 15:08:00
--  
老大,

Tables("车辆回车确认_Table1").Sort

 

forms("车辆回车确认").ResumeRedraw

这个是无效的。请老大解决下!

 

 


--  作者:狐狸爸爸
--  发布时间:2011/11/30 15:10:00
--  

是Sort导致ResumeRedraw无效?

 

我检查看看。


--  作者:baoxyang
--  发布时间:2011/11/30 15:15:00
--  

我测试Tables("车辆回车确认_Table1").LeftVisibleCol = Tables("车辆回车确认_Table1").Cols("运输单号").Index应是这个造成,另外Sort还会导致表的滚动位置不是显示的第一列位置,而是排序最后一项的位置。

[此贴子已经被作者于2011-11-30 15:16:25编辑过]

--  作者:baoxyang
--  发布时间:2011/11/30 15:19:00
--  
以下是引用狐狸爸爸在2011-11-30 11:30:00的发言:

收到,我有空抽查一下。

另外看看是不是你的显示列这个自定义函数的代码有问题。

也可以尝试换换代码位置:

 

forms("车辆回车确认").stopRedraw

Tables("车辆回车确认_Table1").StopREdraw
Dim ss As String = "select * from {车辆配送表} where [状态] = \'出车完成\'"
Tables("车辆回车确认_Table1").fill(ss,"baox",False)
Dim str1 As String = "运输单号,90|运输类型,60|状态,60|车牌号,70|司机姓名,60|计划单号,80|待运单号,80|出车时间,80|回车时间,80|出发地址,100|目的地址,100|收货单位,70|实际运量,70|实际件数,70|车型,60|发货通知号,70|货物名称,60|路桥费,60|公里数,60"
Functions.Execute("显示列",Tables("车辆回车确认_Table1"),str1)

Tables("车辆回车确认_Table1").Sort = "车牌号,出车时间"

Tables("车辆回车确认_Table1").ResumeRedraw
forms("车辆回车确认").ResumeRedraw

换个位置,就不会,否则SORT就有影响