博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
弹出唯一窗口
阅读量:5218 次
发布时间:2019-06-14

本文共 2105 字,大约阅读时间需要 7 分钟。

主窗口后台代码:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace WindowsFormsApplication2{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        //建立集合来记录        List
AllForm = new List(); private void button1_Click(object sender, EventArgs e) { Form2 f2 = new Form2(this, textBox1.Text);//实例化类 f2.Name = "f2";//重新给其name赋值,以免发生冲突 OnlyOne(f2); } //保证弹出窗口唯一的方法,私有 private void OnlyOne(Form FF) { bool hasForm = false; foreach (Form f in AllForm) { if (f.Name == FF.Name) { hasForm = true; f.WindowState = FormWindowState.Normal; f.Focus(); } } if (hasForm) { FF.Close(); } else { AllForm.Add(FF); FF.Show(); } } private void button2_Click(object sender, EventArgs e) { Form3 f3 = new Form3(); f3.Name = "f3"; OnlyOne(f3); } //弹出窗口关闭后,在集合里将其移除,避免误关或关闭后无法再次弹出 public void RemoveForm(Form ff) { AllForm.Remove(ff); } }}

弹出窗口的后台代码:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace WindowsFormsApplication2{    public partial class Form2 : Form    {        Form1 F1 = null;        public Form2(Form1 f1, string uname)        {            InitializeComponent();            F1 = f1;            label1.Text = uname + ",欢迎回来!";        }        private void Form2_FormClosing(object sender, FormClosingEventArgs e)        {            F1.RemoveForm(this);        }    }}

转载于:https://www.cnblogs.com/123lucy/p/5845893.html

你可能感兴趣的文章
springboot添加servlet的两种方法
查看>>
java的Array和List相互转换
查看>>
layui父页面执行子页面方法
查看>>
如何破解域管理员密码
查看>>
Windows Server 2008 R2忘记管理员密码后的解决方法
查看>>
IE11兼容IE8的设置
查看>>
windows server 2008 R2 怎么集成USB3.0驱动
查看>>
Foxmail:导入联系人
查看>>
vue:axios二次封装,接口统一存放
查看>>
vue中router与route的区别
查看>>
js 时间对象方法
查看>>
网络请求返回HTTP状态码(404,400,500)
查看>>
Spring的JdbcTemplate、NamedParameterJdbcTemplate、SimpleJdbcTemplate
查看>>
Mac下使用crontab来实现定时任务
查看>>
303. Range Sum Query - Immutable
查看>>
图片加载失败显示默认图片占位符
查看>>
【★】浅谈计算机与随机数
查看>>
[转载]宇宙文明等级的划分标准
查看>>
《代码阅读方法与实现》阅读笔记一
查看>>
解决 sublime text3 运行python文件无法input的问题
查看>>