gpt4 book ai didi

delphi - 如何在模态窗体处于事件状态时重新绘制父窗体?

转载 作者:行者123 更新时间:2023-12-03 18:20:24 25 4
gpt4 key购买 nike

在 Delphi 2006 中,我展示了一个模态形式。该表单中的用户输入可以更改当前可能在父表单(即主表单)上显示的数据。为了反射(reflect)这些更改,我需要强制重新绘制主窗体上的一些所有者绘制的组件。我尝试从模态形式中这样做:

MainForm := Application.MainForm;
MainForm.Invalidate;
MainForm.Update;

这并没有改变一点。我一直认为表单上的“更新”总是会立即重新绘制它 - 显然并非如此。绘画代码本身应该没问题,因为我可以将模态形式移动到那些所有者绘制组件上以强制手动重新绘制。

但是当数据发生变化时,如何以编程方式强制重新绘制?

编辑:下周我将尝试 Application.ProcessMessages 和 Refresh,感谢您的建议。

抱歉这么久才回复,感谢所有回复的人。调用 Refresh() 是解决方案的一部分,但它必须在自定义绘制组件上完成,而不是在它们所在的表单上完成...现在我想接受多个答案;-)

最佳答案

也许值得一提的是,如果您使用的是皮肤库,它也会影响事物。我发现我必须刷新皮肤库,而不是表单。

关于delphi - 如何在模态窗体处于事件状态时重新绘制父窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/288813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com