应该有一个简单的解决方案,但我找不到一个:
我有一个连续的表单,所有控件都启用并锁定了透明背景和框架。表单:详细信息部分具有备用后退颜色集。
表单显示通过表单标题中的组合框选择的银行帐户的交易。更改银行帐户后,将显示新帐户的交易。
但是,如果为新帐户显示的第一个屏幕行与前一个帐户的颜色不同,则所有控件都会保留先前显示的行的背景颜色。 Requery上发生相同的屏幕损坏,或者如果控件转到特定行。
希望下面的图片能够澄清:
Example of Alternate Back Colour problem
我尝试了各种各样的东西,但似乎没有解决这个问题。最后一种方法是删除备用背面颜色,但我真的不想那样做。任何帮助解决这个问题都将非常感激。
答案 0 :(得分:1)
尽管我已经试图把这个想法放在心上并继续使用功能性的东西,但它一直在不停地徘徊。经过大量的搜索并且通常会分心,我发现了一个非常简单的解决方案(https://access-programmers.co.uk/forums/showthread.php?t=268390):
当我更改帐户或转到某个记录时,只需将记录操作包含在“Echo False”中,“Echo True”即可。对。所以,例如:
If RecordsetClone.RecordCount > 0 Then
Me.RecordsetClone.MoveLast
If Me.RecordsetClone.RecordCount > wRowNum Then
wRecordNo = Me.RecordsetClone.RecordCount - wRowNum
Else
wRecordNo = Me.RecordsetClone.RecordCount
End If
Echo False
DoCmd.GoToRecord , , acGoTo, wRecordNo
Echo True
End If
或:
Set rs = Me.Recordset.Clone
rs.FindFirst "WkACT_ID = " & Nz(wCurrentRecord, 0)
If Not rs.EOF Then
Echo False
Me.Bookmark = rs.Bookmark
Echo True
End If
Hoorah!希望这对那些坚持同样的化妆品,虽然令人生气的问题有帮助。