【问题标题】:Doublebuffering form causes black dots at corners of text box双缓冲形式导致文本框角落出现黑点
【发布时间】:2011-12-26 20:09:22
【问题描述】:

当我在表单上有几个文本框并将表单的DoubleBuffered 属性设置为True 时,它会使表单上的文本框在每个角落都有黑点。以下是文本框的角在父窗体上没有 DoubleBuffered 的样子:

这就是他们的样子 with DoubleBuffered:

我已经尝试在文本框本身上将DoubleBuffered 设置为False,但这根本没有帮助。我该怎么做才能解决这个烦恼?

【问题讨论】:

    标签: delphi delphi-xe doublebuffered


    【解决方案1】:

    您可以在执行此操作的组件上移除 DoubleBuffering。

    表单仍然是双缓冲的,编辑框不会显示黑角。

    通过对象检查器,或通过代码:

    Form1.DoubleBuffered := True;
    Edit1.DoubleBuffered := False;
    Edit2.DoubleBuffered := False;
    

    【讨论】:

    • 实际上,即使文本框本身没有双缓冲,黑点仍然会出现。
    • 是的,我刚试过,抱歉,我认为它可能有效,我不明白为什么它不起作用。
    • DoubleBuffering 对我来说总是很奇怪,除非 DrawingStyle 设置为 Gradient,否则 TToolBar 会疯狂使用 DoubleBuffering。
    • 这就是发生的事情,也是我从不使用双缓冲的原因
    • @Seth 我在调整大小时通常会遇到闪烁问题。我按照这里的描述处理它们:stackoverflow.com/questions/8060672也许你可以在那里找到一些有用的东西
    猜你喜欢
    • 1970-01-01
    • 2018-10-12
    • 1970-01-01
    • 2019-11-01
    • 2010-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多