窗体最小化再恢复后绘图消失解决方法

private void button1_Click(object sender, EventArgs e)
{
    using (Graphics graphics = this.CreateGraphics())
    {
        graphics.DrawString("木子屋:http://www.mzwu.com/", new Font("宋体", 15), new SolidBrush(Color.Red), 0, 0);
    }
}

上边代码在窗体上写了几个字,当窗体最小化再恢复后,你会发现文字没掉了,解决方法是在窗体的Paint事件中进行绘图:

private void Form1_Load(object sender, EventArgs e)
{
    this.Paint += delegate(object sender1, PaintEventArgs e1)
    {
        e1.Graphics.DrawString("木子屋:http://www.mzwu.com/", new Font("宋体", 15), new SolidBrush(Color.Red), 0, 0);
    };
}

另一个问题在窗体的Load事件中无法进行绘图,同样也是要放在Paint事件中进行:

private void Form1_Load(object sender, EventArgs e)
{
    //显示不出来
    using (Graphics graphics = this.CreateGraphics())
    {
        graphics.DrawString("木子屋:http://www.mzwu.com/", new Font("宋体", 15), new SolidBrush(Color.Red), 0, 0);
    }
}


评论: 0 | 引用: 0 | 查看次数: 5859
发表评论
登录后再发表评论!