
正文
关于vb.net绘制图像闪烁的信息
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB.net绘图具体如何设置双缓冲
VB.NET画图是不能设置双缓冲的,双缓冲是指窗体,从来没说是针对控件。
不用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);
//继续画
相关问答
Q1: vb.net picturebox 清屏 闪烁
这个问题我以前也遇到过,好像是显卡或显卡的驱动问题,在更换显卡(比较好一点的显卡)后问题解决了。
Q2: VB.NET窗体添加背景图片后会闪烁,任务栏标题消失
操作前把WMP暂停/停止试试,甚至是销毁、重新加载个WMP。
如果是WMP不好,你可以用其它的第三方播放控件嵌在程序中。
不介意的话把代码贴上来帮你看看。
Q3: vb 编程时 如何解决 图像移动时的颤抖(图像闪烁)问题?
图像移动时的颤抖 用picture就没有闪烁,不要用image
如果你要图像拉伸的话,可以把image放到picture里面,
把picture作为容器,图像在image里面就ok啦
Q4: vb窗口重绘出现闪烁等问题
对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事件





