一次只能打开一个窗口

  Form2 form;
        private void button1_Click(object sender, EventArgs e)
        {

            //此方法可以同时打开多个窗体 不符合
            //TicketLibForm ticketLibForm = new TicketLibForm();
            //ticketLibForm.Show();

            //此方法强制只能打开一个,可行

            TicketLibForm ticketLibForm = new TicketLibForm();
            ticketLibForm.ShowDialog();

            //此方法在form值出现变化时使用
            if (form == null)
            {
                form = new Form2();
                form.StartPosition = FormStartPosition.CenterScreen;
                form.Show();
            }
            else
            {
                f.Close();
                f = new TicketLibForm();
                f.StartPosition = FormStartPosition.CenterScreen;
                f.Show();
            }

            //此方法在form值不变时使用
            if (form == null)//窗口未打开
            {
                form = new Form2();
                form.StartPosition = FormStartPosition.CenterScreen;
                form.Show();
            }
            else
            {
                if (form.IsDisposed)//窗口关闭了
                {
                    form = new Form2();
                    form.StartPosition = FormStartPosition.CenterScreen;
                    form.Show();
                }
                else//窗口未关闭
                {
                    form.Activate();
                }
            }
        }

posted on 2010-09-01 17:26  源远流长  阅读(290)  评论(0编辑  收藏  举报

导航