例如 有二个窗体类 form1、form2
两个窗口之间的切换,显示一个就隐藏另一个:
form2 f1=new form2();
f2.show();
this.hide();(this 即为当前窗体类form2
)
关闭其中一个就关闭整个程序:
application.exit();
这是将这个运行的程序关闭,就可将这两个窗体都关闭。
你可以把2个窗口的任何一个设为主窗口
1。关键你怎么操作切换?鼠标?键盘?
显示和隐藏用XX.hide(),XX.Show操作
譬如2个窗口为form1,form2,将form1设为主窗口,在form1内加个form2的实例f2
操作form1用this。XX,操作form2用f2.xx
操作的契机用事件,是鼠标触发,还是键盘,还是按窗口上某个按钮你自己控制
2。在2个窗口的closed事件加上application.exit()即可
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show(this, "确认关闭?",
"提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK)
{
ArrayList alist = new ArrayList();
alist.Add("newCODDemo.exe");
alist.Add("newCODDemo.vshost.exe");
for (int i = 0; i < alist.Count; i++)
{
if (System.Diagnostics.Process.GetProcessesByName(alist[i].ToString()).Length <= 0)
{
try
{
//System.Diagnostics.Process.Start(processName);
System.Diagnostics.Process.GetCurrentProcess().Kill();
}
catch
{
MessageBox.Show(this, "关闭向导出错", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
}
}
注册FormClosing事件,既然关闭了窗体,那相关进程也要关掉。免得一直占用内存资源。
f2.show();应改为f1.show();
是不是有主窗口啊??在主窗口中的两个子窗口之间的切换??需求不太明确