解决窗体重复创建的问题

在窗体创建之前判断当前窗体是否已经存在
1、将窗体定义为全局变量,保证对象唯一
2、如果窗体不存在,则创建新窗体对象
3、当窗体对象已经存在的时候,只需要激活并显示即可
4、窗体关闭时,要清除全局窗体对象变量

 		//实例化添加用户的对象
 		//1、将窗体定义为全局变量,保证对象唯一
        public static AddUser addUser = null;
        
        private void 添加用户AToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //2、如果窗体不存在,则创建新窗体对象
            if(addUser == null)
            {
                addUser = new AddUser();
                addUser.Show();
            }
            //3、当窗体对象已经存在的时候,只需要激活并显示即可
            else
            {
                addUser.Activate();  //激活只在最小化的时候起作用
                addUser.WindowState = FormWindowState.Normal;
            }
           
        }
 private void AddUser_FormClosed(object sender, FormClosedEventArgs e)
        {
        //4、窗体关闭时,要清除全局窗体对象变量

            FormManage.addUser = null;  //当窗体关闭时,将窗体对象清理掉
        }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值