Access 2007以上版本偶尔会出现窗体闪烁晃动(Flicker)的情况(有图片更明显)

2019-12-08 08:00:00
zstmtony
原创
265


Access 2010-更改.picture有时会导致表格闪烁或晃动(Flicker  / Flash)
我已经将Access97数据库升级到Access 2010,并且看到了许多闪烁的表格。从Access97升级到Access2003,我没有看到这种现象。
这种现象一般出现在Access2007及以上版本,不知道是否主题 还是Ribbon的影响,而Access 2003及之前的版本则不会出现闪烁。表现正常。

甚至在一个普通窗体上放2个图片,让窗体足够宽和高(足以让水平和垂直滚动条显示出来),然后你上下滚动和左右滚动,你会发现左右滚动窗体时,窗体上的图片就会出现闪光。


尚未找到解决方案:

更改较小的.picture(form_timer)-导致整个表单闪烁

在制表符控件中更改.caption(form_current)-导致字幕和表格都出现可怕的闪烁

我试过了:

1. docmd.echo
2. me.painting=false
3.application.echo false
4.LockWindowUpdate Application.hWndAccesApp

多种解决方案 都没有成功解决问题。(但有些能稍减少闪烁)

真正令人不安的是,Access97(或Access2003)没有任何问题,尽管在该环境中的测试要少得多。有任何想法吗?

我遇到了同样的问题,似乎没有人能够确定2010年的情况。我和您一样沮丧,并希望Microsoft的某个人能够监视此论坛并给予认真的考虑。
我只是从2003年升级到2010年,即使对于具有许多选项卡和大量子表单的最复杂的表单,也绝不会闪烁。真可惜 我已经完成了您所说的所有事情,甚至尝试仅在需要时才加载表单,但没有什么能够真正消除闪烁。我甚至看到色带闪烁。我很高兴看到其他用户遇到此问题,因为我没有看到太多的帖子,但是这里有一些。也许微软会看到一个真正的问题并进行改进



我知道这个问题已经在多个带有echo等的线程中消失了,但是...

随着Access 2010的闪烁确实增加了(由于导航表单选项和本机Web控件都需要使用该版本)

更新后的重新查询组合会导致全部闪烁或只是调整表单大小,我可以看到访问重新格式化/计算的速度非常慢...或在连续的子表单中向下滚动...

是的,我同时拥有子表单和不同的绑定控件-我没有任何子表单未绑定的标签等。

它使我发疯:-) ..

我可以使用调整大小/呈现等事件来停止访问以暴露其纯正的性能吗?

谢谢 :-)

相关联内容:

将一张图片设为窗体背景后(或直接放一张图片在窗体上),再在上面放置控件并将其背景设为透明,这时如果代码动态改变控件的外观效果,会有极为明显的闪烁


You can use

Declare Function LockWindowUpdate Lib "user32" Alias "LockWindowUpdate" (ByVal hwndLock As Long) As Long

to lock any update of a given hWmd. So, basiclly, add the declare in the declaration section of the form, and at the start of the OnCurrent procedure, have something like

LockWindowUpdate Application.hWndAccesApp



and, on exiting this procedure, have:

LockWindowUpdate 0

to unlock any update the system may generate to your locked window. Note that if an error occurs, the window will ***appear*** to be frozen. So, add the appropriate error handling to unfreeze it, if an error occur; ie,DON'T FORGET to add also, in your error handling:

LockWindowUpdate 0



分享