我目前正在使用表单上的绘画事件将图像绘制到屏幕上。(想想背景图像)和该图像顶部的一些矩形。
private void MainWindow_Paint(object sender, PaintEventArgs e)
{
e.Graphics.Clear(Color.CornflowerBlue);
e.Graphics.DrawImage(Image.FromFile(m_Directory + @"\Images\" + BackgroundText), m_Screen);
e.Graphics.FillRectangle(BGBrush, new Rectangle(X, Y, Width, Height));
e.Graphics.DrawString(Text, Settings.TextFont, Other.Settings.TextBrush, new Rectangle(X, Y + 2, Width, Height));
}
该页面经常被重新绘制(几乎在每个鼠标移动事件中)并且导致使用大量内存。达到 1,500,000k 之前它会停止绘制到表单并在图片上显示带有红十字的白色背景以表示绘制失败。
我对它是如何跑得如此糟糕感到有点不知所措。我是绘画活动的新手,所以任何帮助都将不胜感激!