我注意到,在 Delphi 中,您可以通过调用Button.Update()来调用TButton组件上的Update过程。Update过程也可用于其他一些组件。这个Update过程到底是做什么的?什么时候使用它?
Button.Update()
TButton
Update
sc4hvdpw1#
Update过程继承自TWinControl类,而TWinControl类又继承自TControl类。
TWinControl
TControl
的数据查看文档:Vcl.Controls.TControl.Update的立即处理任何挂起的绘制消息。调用“更新”以强制在进行更多可能耗时的处理之前重新绘制控件。使用“更新”可向无法等待Windows绘制消息到达的用户提供即时反馈。更新不会使控件失效,而只是强制重新绘制任何已经失效的区域。调用重新绘制也会使控件失效。Vcl.Controls.TWinControl.Update的强制控件更新。更新重新绘制控制图面中过期的任何部分。通常,更新会自动发生,但在可能干扰自动更新的冗长处理之前,可能需要调用更新。不必要地调用更新会增加开销并导致屏幕 Flink 。仅更新已确定为过期的控件的重绘区域。若要强制立即重绘整个控件,请调用Repaint方法。若要通知控件已过期(而不强制立即重绘),请调用Invalidate方法。
5ssjco0h2#
我想我也会在这里添加我自己的答案,因为我现在理解了Update过程的作用以及它是如何工作的。Update过程是TControl类的一个方法,TControl类是可以出现在包括TButton组件在内的窗体上的所有可视组件的基类。Update过程用于重绘控件及其子控件(如果它有任何子控件)。Delphi 在必要时自动调用Update过程,例如首次显示控件或调整控件大小时。但是,在某些情况下,您可能希望强制控件立即重绘自身,而不是等待 Delphi 自动重绘。在这种情况下,您可以手动调用控件的Update过程。例如,如果您有一个TButton组件,它会更改其标题或颜色以响应某些用户操作,你可能想在做出改变后调用Update,以确保新的外观立即在屏幕上可见,而不是等待Windows Paint消息到达和 Delphi 响应。总而言之,在 Delphi 中对TButton调用Update会强制它立即重绘自身。当您希望确保对按钮外观的更改在屏幕上立即可见时,可以使用此方法。
2条答案
按热度按时间sc4hvdpw1#
Update
过程继承自TWinControl
类,而TWinControl
类又继承自TControl
类。的数据
查看文档:
Vcl.Controls.TControl.Update的
立即处理任何挂起的绘制消息。
调用“更新”以强制在进行更多可能耗时的处理之前重新绘制控件。使用“更新”可向无法等待Windows绘制消息到达的用户提供即时反馈。
更新不会使控件失效,而只是强制重新绘制任何已经失效的区域。调用重新绘制也会使控件失效。
Vcl.Controls.TWinControl.Update的
强制控件更新。
更新重新绘制控制图面中过期的任何部分。通常,更新会自动发生,但在可能干扰自动更新的冗长处理之前,可能需要调用更新。不必要地调用更新会增加开销并导致屏幕 Flink 。
仅更新已确定为过期的控件的重绘区域。若要强制立即重绘整个控件,请调用Repaint方法。若要通知控件已过期(而不强制立即重绘),请调用Invalidate方法。
5ssjco0h2#
我想我也会在这里添加我自己的答案,因为我现在理解了
Update
过程的作用以及它是如何工作的。Update
过程是TControl
类的一个方法,TControl
类是可以出现在包括TButton
组件在内的窗体上的所有可视组件的基类。Update
过程用于重绘控件及其子控件(如果它有任何子控件)。Delphi 在必要时自动调用
Update
过程,例如首次显示控件或调整控件大小时。但是,在某些情况下,您可能希望强制控件立即重绘自身,而不是等待 Delphi 自动重绘。在这种情况下,您可以手动调用控件的
Update
过程。例如,如果您有一个TButton
组件,它会更改其标题或颜色以响应某些用户操作,你可能想在做出改变后调用Update
,以确保新的外观立即在屏幕上可见,而不是等待Windows Paint消息到达和 Delphi 响应。总而言之,在 Delphi 中对
TButton
调用Update
会强制它立即重绘自身。当您希望确保对按钮外观的更改在屏幕上立即可见时,可以使用此方法。