作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Delphi 2006 中,我展示了一个模态形式。该表单中的用户输入可以更改当前可能在父表单(即主表单)上显示的数据。为了反射(reflect)这些更改,我需要强制重新绘制主窗体上的一些所有者绘制的组件。我尝试从模态形式中这样做:
MainForm := Application.MainForm;
MainForm.Invalidate;
MainForm.Update;
这并没有改变一点。我一直认为表单上的“更新”总是会立即重新绘制它 - 显然并非如此。绘画代码本身应该没问题,因为我可以将模态形式移动到那些所有者绘制组件上以强制手动重新绘制。
但是当数据发生变化时,如何以编程方式强制重新绘制?
编辑:下周我将尝试 Application.ProcessMessages 和 Refresh,感谢您的建议。
抱歉这么久才回复,感谢所有回复的人。调用 Refresh() 是解决方案的一部分,但它必须在自定义绘制组件上完成,而不是在它们所在的表单上完成...现在我想接受多个答案;-)
最佳答案
也许值得一提的是,如果您使用的是皮肤库,它也会影响事物。我发现我必须刷新皮肤库,而不是表单。
关于delphi - 如何在模态窗体处于事件状态时重新绘制父窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/288813/
我来自 Asp.Net 世界,试图理解 Angular State 的含义。 什么是 Angular 状态?它类似于Asp.Net中的ascx组件吗?是子页面吗?它类似于工作流程状态吗? 我听到很多人
我一直在寻找 3 态拨动开关,但运气不佳。 基本上我需要一个具有以下状态的开关: |开 |不适用 |关 | slider 默认从中间开始,一旦用户向左或向右滑动,就无法回到N/A(未回答)状态。 有人
我是一名优秀的程序员,十分优秀!