• 使用委托实现c#,窗体与窗体之间的传值


    主界面:

    Form1中的代码:

    namespace _06委托练习_窗体传值
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }


            private void btn1_Click(object sender, EventArgs e)
            {
                Form2 f2=new Form2(txt1.Text,DoSth);//传过去一个字符串和DoSth方法
                f2.Show();
            }


            //把字符串变量的值赋值给文本框
            public void DoSth(string str)
            {
                this.txt1.Text = str;
            }
        }
    }

    Form2中的代码:

    namespace _06委托练习_窗体传值
    {
        public delegate void MyDel(string str);//定义一个委托
        public partial class Form2 : Form
        {
            
            public Form2()
            {
                InitializeComponent();
            }


            private MyDel _mdl;//实例化一个委托变量
            public Form2(string str,MyDel mdl):this()
            {
                this.txt2.Text = str;
                this._mdl = mdl;
            }


            private void btn2_Click(object sender, EventArgs e)
            {
                if (this._mdl!=null)
                {
                    this._mdl(txt2.Text);
                    this.Close();
                }
            }
        }
    }

  • 相关阅读:
    concurrent模块
    gevent模块
    Python中的线程
    2019.10.22 用TCP实现服务端并发接收
    Python中的进程
    进程和线程
    网络编程常用模块及方法
    [UOJ #222][NOI2016]区间(线段树)
    [BZOJ 4873][SHOI&SXOI2017]寿司餐厅(最大权闭合子图)
    [BZOJ 3751][NOIP2014]解方程(哈希)
  • 原文地址:https://www.cnblogs.com/chuhaida/p/5771016.html
Copyright © 2020-2023  润新知