访问表单控件闪烁控件是来自Class的setFocus

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了访问表单控件闪烁控件是来自Class的setFocus相关的知识,希望对你有一定的参考价值。

我一直在努力让访问表单上的闪烁停止。 Access 2013和2016中出现相同的问题。

我在表单上有24个切换按钮。由于OptionGroup控件的某些限制,我已将所需的所有功能构建到一组切换按钮中。它通过每个按钮组的类附加到按钮上。

一切正常,但当用户按下向左,向右,向上或向下箭头时,控件会闪烁。

代码:

Private Sub tglS_KeyDown(KeyCode As Integer, Shift As Integer)
    If Shift = 1 Then Exit Sub
    Select Case KeyCode
        Case 39, 40
            KeyCode = 0
            tglSI.SetFocus
            tglSI.Value = True
            tglSI_AfterUpdate
        Case 37, 38
            KeyCode = 0
            tglNA.SetFocus
            tglNA.Value = True
            tglNA_AfterUpdate
    End Select
End Sub

我已经逐步完成了代码,发现只要一个控件是SetFocus

所有控件都会闪烁绑定和未绑定控件。切换按钮位于标签页上,同时也会将选项卡上的控件闪烁。

我曾尝试在Application.Echo声明的每一侧放置SetFocus语句,但没有变化。

感谢您的任何帮助,您可以提供。

答案

很难说你是否这样做只是为了确定,你是否设定了值来回声?

Application.Echo False
Select Case KeyCode
    Case 39, 40
        KeyCode = 0
        tglSI.SetFocus
        tglSI.Value = True
        tglSI_AfterUpdate
    Case 37, 38
        KeyCode = 0
        tglNA.SetFocus
        tglNA.Value = True
        tglNA_AfterUpdate
End Select
Application.Echo True
另一答案

你的代码引用了一个函数tglSI_AfterUpdate和tglNA_AfterUpdate - 那些函数或子程序是否改变了表单的回声?我的回声实际上导致闪烁,以及条件格式化可能会改变事件期间控件的可见性。切换按钮上有图像还是文本?

以上是关于访问表单控件闪烁控件是来自Class的setFocus的主要内容,如果未能解决你的问题,请参考以下文章

Angular4 - 表单控件没有值访问器

winform绘制闪烁 前台有个线程隔一秒给控件赋值,控件就开始闪烁,如何处理

无法在运行时以编程方式影响闪烁控制

WPF之数据触发器 改变控件背景色或闪烁

来自 FormGroup 的禁用控件(表单自定义表单控件的一部分)被父级中的 .getRawValue() 排除

C# 在winform画了一个自定义控件,现在我要在运行后进行拉伸动态改变大小,但快速拉伸就闪烁,怎么消除