关于 Invalidate() 导致所有控件无效并重绘的问题??? private void timer2_Tick(object sender, EventArgs e) { Invalidate(); } GDI+ 时钟一直在闪烁怎么才能使 GDI+ 绘制的时钟看起来不闪烁???? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这样是强制整个窗体无效了,窗体上所有控件都要重绘。可以控制让时钟控件无效(比如让时钟所属的容器无效),或者在窗体Paint时判断无效区,针对性地绘制。对时钟这样频繁重绘的区域,还可以采用双缓冲机制绘制时钟。 其实前面的回复已经告诉你该怎么做了。Invalidate();相当于this.Invalidate();看你的情况,this应该是窗体对象了,这样当然是强制整个窗体无效。不知道你的时钟是怎么实现的,如果是自定义控件,调用该控件的Invalidate();可以强制控件重绘。如果不是独立的控件,可以在一Panel控件上绘制时钟,只要定时调用Panel的Invalidate();也一样。如果局部重绘还不能解决闪烁的问题,可以用双缓冲绘制时钟 在哪画的始终,就执行谁的Invalidate,另外开启他的双缓冲 在pictureBox 上画的,已经实现了,怎么开启双缓冲呢? http://blog.163.com/gukai_91/blog/static/11170448620093235651242/ 怎么在from窗体中找到自定义控件中的 label 控件,还要给他的text 属性赋值! 【急】udp实时接收数据的问题! 求让Control类的子类实现同一个额外功能的好方法 C#调用C++的DLL的问题,急啊!! 求自定义控件开发方面的书或者资料 请教如何将一个字节数组序列化到一个XML字符串中? DataGridView的问题 如何在页面上写文字,并且换行? 高难度水晶报表统计问题!不会也来顶一下,统统有分! TreeView的问题 多窗体在同一个主窗体的panel中显示的问题 求回答 c#中利用ffmpeg转换视频文件和截取图片的问题
可以控制让时钟控件无效(比如让时钟所属的容器无效),
或者在窗体Paint时判断无效区,针对性地绘制。对时钟这样频繁重绘的区域,还可以采用双缓冲机制绘制时钟。
看你的情况,this应该是窗体对象了,
这样当然是强制整个窗体无效。不知道你的时钟是怎么实现的,如果是自定义控件,调用该控件的Invalidate();
可以强制控件重绘。如果不是独立的控件,可以在一Panel控件上绘制时钟,
只要定时调用Panel的Invalidate();也一样。如果局部重绘还不能解决闪烁的问题,
可以用双缓冲绘制时钟
怎么开启双缓冲呢?