请教windows form间显示切换效率问题
两个form A,B
A.backcolor = 黄色
B.backcolor = 蓝色
A在B前面,A上有一button,点击使A.visible = false
为什么点击A上button的时候,总感觉A是一块一块消失的,而不是作为一个整体消失的。A消失的过程中能同时看到A和B两个form上的部分控件。而且form上的控件越多越明显。
请问应该如何让form A一下子消失呢?
加application.doevents没有明显效果。
------解决方案-------------------- 用最小化,试果可能好点
------解决方案--------------------主要是內存太小的原因。
首推﹕
A.WindowState = System.Windows.Forms.FormWindowState.Minimized;
A.visible = false;
或試試:
A.SuspendLayout();
A.visible = false;
A.ResumeLayout();
------解决方案--------------------双缓冲
楼主的控件是不是有透明背景色的?
------解决方案-------------------- 改用 pictureBox试试
------解决方案--------------------不要直接在FORM内加栽背景!!这样会很慢!!可以使用pictureBox等容器!
------解决方案--------------------private void button1_Click(object sender, EventArgs e)
{
// Form1.LockWindowUpdate((IntPtr)(Form1.GetDesktopWindow()));
Application.OpenForms[0].BringToFront();
Close();
}