我创建了一个组件,它在 TWinControl 中嵌入了一个硬件加速的渲染器,因此您可以将它放置在表单上。它在大多数情况下工作得很好,但是如果我尝试调整控件的大小,一切都会变成空白,直到消息循环运行并为渲染器调用 WndProc,渲染器托管在外部 DLL 中。这意味着我需要在代码中调整控件大小后显式调用 Application.ProcessMessages,我知道这被认为是不好的做法。
当我更改控件的大小时,有没有办法在控件本身中放置一些逻辑以使其调用 DLL 中的 WndProc,这样我就不需要调用 ProcessMessages 来获取正确呈现的内容?