如何使用所有者绘制丰富的编辑控件

时间:2012-11-19 22:12:32

标签: winapi

我在Windows上使用Rich Edit Control。我尝试将值SS_OWNERDRAWN传递给CreateWindowEx来电,但似乎没有效果。如何阻止丰富的编辑控件绘制任何内容以便我可以拥有它?

我还试图设置一个窗口子类,它只是忽略WM_PAINT但转发了所有其他消息。这对我的整个系统产生了极大的恶劣影响,也导致我的应用停止。

编辑:显然,系统仍然期望BeginPaint和EndPaint响应WM_PAINT,即使你返回0并且不绘制任何东西。我的系统不再死了,我的应用程序不再停止,丰富的编辑肯定不再绘制任何东西,但我仍然无法在该区域渲染我的Direct3D9文本。 :(

编辑:事实证明,您没有ID3DXFont::GetDC()返回的DC的所有权。文件不清楚,但问题解决了。

1 个答案:

答案 0 :(得分:0)

RichEdit控件不支持所有者绘图窗口,因此您无法使用SS_OWNERDRAWN或类似内容。

至于WM_PAINT,简单地忽略绘画信息不应该引起如此剧烈的副作用,所以你必须做错其他事。