文件名称:绘制和重绘-boost电路计算模版——mathcad
文件大小:5.1MB
文件格式:PDF
更新时间:2024-06-29 17:46:28
控件,.NET
图3.2 GDI+绘制示例 3.3 绘制和重绘 接着上面的话题,当窗体最小化或者隐藏时,操作系统就会将窗体的 UI 资源在内存中 释放掉,然后当窗体恢复时,操作系统会发送消息让窗体调用 Control.OnPaint()方法来 重新创建窗体 UI。这种架构之所以这样处理,是由于以前的计算机资源不像现在这样比较“富 裕”,图形资源占用大量的内存等资源,如果不及时释放掉,会严重消耗掉内存。如果有一 个窗体被另外一个窗体遮挡住一部分,那么被遮挡区域的控件将被重绘。 因此,基于历史遗留的架构设计,对于窗体或者控件的绘制逻辑建议放在 Paint事件中, 放在其他地方往往不能按照预期进行绘制。那么又一个问题来了,如果我们就是需要在其他 方法中调用绘图逻辑,那该怎么办呢?其实解决方法是将绘图逻辑依然放在 Paint事件,其 他方法可以配置相关属性,然后通过 Invalidate()来调用 Paint事件进行绘图即可。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace GDIDemo { public partial class Form2 : Form { public Form2() { InitializeComponent();