0

所以我有一个问题,我认为之前已经探索过,但我似乎找不到任何东西。我制作了一个完全自定义绘制的自定义选项卡控件类,并在用户单击不同选项卡时显示/隐藏 CDialog 对象。为此,我重载了paint方法(我没有使用用户绘制功能)。除了一个问题外,一切似乎都运行良好,我遇到的问题是,当用户在当前显示的对话框中选择一个控件(即 CEdit)并按下回车键时,tabCtrl 将收到一个 WMPAINT导致 tabCtrl 的主体被绘制在当前对话框上的消息。为了解决这个问题,我修改了 tabCtrl 的擦除背景方法以显示当前对话框,该对话框修复了对话框被绘制但每次按下或按住 enter 键时控件中都会闪烁,因为绘制/显示对话组合发生。我想知道是否有人以前处理过这个问题并有修复或任何想法。我一直无法想出任何有效的方法。抱歉缺少代码,我没有得到所有者的许可来分享它。

4

1 回答 1

0

双缓冲可能会对您有所帮助。请谷歌它 - 有很多例子。以本文为起点

于 2013-04-24T01:48:02.423 回答