十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
VB.NET画图是不能设置双缓冲的,双缓冲是指窗体,从来没说是针对控件。
成都创新互联成立于2013年,我们提供高端网站建设公司、成都网站制作、网站设计、网站定制、网络营销推广、成都小程序开发、微信公众号开发、成都网站营销服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为搅拌罐车企业提供源源不断的流量和订单咨询。
不用graphic.clear清理重画就不会闪烁。你可以先把容器删了再重新建立一个再去画。
简单举例:
Graphics g;
Pen p;
Panel pl;
构造函数初始化:
p=new Pen(Color.Red,2);
pl=panel1;
造成闪烁的画法:
g=pl.CreateGraphics();
g.Clear(SystemColor.ButtonFace);
//.....画新的
不会闪烁的办法:
this.Controls.ReMoveAt(panel1);
pl=new Panel();
pl.Name="panel1";
//....创建容器控件
this.Controls.Add(pl);
//继续画
这个问题我以前也遇到过,好像是显卡或显卡的驱动问题,在更换显卡(比较好一点的显卡)后问题解决了。
操作前把WMP暂停/停止试试,甚至是销毁、重新加载个WMP。
如果是WMP不好,你可以用其它的第三方播放控件嵌在程序中。
不介意的话把代码贴上来帮你看看。
图像移动时的颤抖 用picture就没有闪烁,不要用image
如果你要图像拉伸的话,可以把image放到picture里面,
把picture作为容器,图像在image里面就ok啦
对paint事件不熟,但是感觉不能写在form2.paint事件里,怕说错,具体的就不说了,下面说下解决方案:
在form2中添加一个timer控件,并始其interval=100(设计时) 然后在timer事件中添加你写在form2.paint中的代码!如
Private Sub Timer1_Timer()
If Form1.Option1(0).Value = True Then
Label1.Visible = False
Text2.Visible = False
Else
Label1.Visible = True
Text2.Visible = True
End If
End Sub
要求form1不能关闭(unload)只能visible=false或hide,但最好不要管它,因为上面的代码是随时检测form1中的单选按钮的,可以随时换随时更新 。补充:事先要去掉你的paint事件