A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 不是炎亚纶 于 2013-10-29 12:25 编辑

private void button1_Click(object sender, EventArgs e)
        {
            string str1 = textBox1.Text;
            string str2 = textBox2.Text;
            int re1;
            int re2;
            if (int.TryParse(str1, out re1) == false)
            {
                MessageBox.Show("输入的第一个数字不合法");
                return;
            }
            if (int.TryParse(str2, out re2) == false)
            {
                MessageBox.Show("输入的第二个数字不合法");
                return;
            }
            textBox3.Text = Convert.ToString(re1 + re2);

        }

一个简单的加法计算器,上面这段代码 ,运行的时候 如果第一个文本框中(textbox1 中),如果输入 非法的字符 ,如 a 、b、c、等就会弹出对话框一直提示 "输入的第一个数字不合法"  , 但是上面的程序看不见像控制台程序那样循环输入要用 while  、for  ,的字样 ,如果说  return 是跳出了这个 button1_Click 函数 ,那么是什么机制 让它又返回执行的呢 ?     反复输入 这个循环 整个运行过程是怎么样的呢 ?   

评分

参与人数 1技术分 +1 收起 理由
茹化肖 + 1

查看全部评分

2 个回复

正序浏览
这个方法确实没有循环,但是这个方法绑定到了button的单击事件(就是委托变量)的方法列表中,当button单击时,就会调用这个事件(委托变量),委托变量的调用其实就是调用他的方法列表中的方法(支持多路广播,就是绑定了多个方法,会按顺序掉用)。即调用绑定的button1_Click 方法,如何绑定的你在窗体设计文件中可以看到

评分

参与人数 1技术分 +1 收起 理由
茹化肖 + 1

查看全部评分

回复 使用道具 举报 1 0
return 跳出了button1_Click 当下次鼠标出发click事件的时候重新执行button1_Click  看看事件就明白了

评分

参与人数 1技术分 +1 收起 理由
茹化肖 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马