C#双缓存.cs
protected override void OnPaint(PaintEventArgs e ) { //屏幕外的图像 Graphics gxOff; //要双缓冲的位图 if (m_bmpOffscreen == null) { m_bmpOffscreen = new Bitmap(ClientSize.Width, ClientSize.Height); } gxOff = Graphics.FromImage(m_bmpOffscreen); gxOff.Clear(this.BackColor); //绘制一些位图 gxOff.DrawImage(bmpParent, 0, 0, bmpRect, GraphicsUnit.Pixel); //边界矩形 Rectangle rc = this.ClientRectangle; rc.Width--; rc.Height--; //绘制边界 gxOff.DrawRectangle(new Pen(Color.Black), rc); //从内存位图绘制 e.Graphics.DrawImage(m_bmpOffscreen, 0, 0); base.OnPaint( e ); }
posted on 2012-11-21 10:13 xuejianhui 阅读(334) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步