日期:2014-05-17  浏览次数:20968 次

C#中,在界面产生后和事件触发之前,需要执行一些操作,这程序怎么设计才好
做了一个C#工程,在界面生成后,只要界面不关闭,一直重复执行一个流程,但是这个流程前一部分准备工作必须在一个按钮点击前就完成,在点击这个按钮之前并没有点击界面上其他控件,而且这部分准备工作在每次点击这个按钮之前都要重新做。怎么设计才能达到这个目标呢?

紧急求助,希望有高手指点下!

------解决方案--------------------
C# code

    public partial class Form1 : Form
    {
        //是否单击按钮
        static bool Click = false;
        
        //实验变量
        static int i = 0;
        public Form1()
        {
            InitializeComponent();
        }

        //要重复的流程
        private void Form1_MouseHover(object sender, EventArgs e)
        {
            //没点击按钮,不停重复i++动作
            if (Click == false)
            {
                i++;

                //为了显示i的变化
                MessageBox.Show("" + i);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Click = true;
        }
    }

------解决方案--------------------
点击按钮之前都要做,可不可以理解为点击按钮都要做,封装一个方法吧,在点击按钮事件中首先调用这个方法。
------解决方案--------------------
点击按钮之前都要重新做和点击按钮之后做有啥区别?
------解决方案--------------------
在构造函数里创建另一个线程并运行,在Button的click事件中检查异步线程返回的状态去决定是否等待。
------解决方案--------------------
你可以在点击按钮后做你所说的点击按钮之前的事,做完再做你说的重复流程,重复流程做法的很多,最简单的就是用timer控件,复杂的就是开线程循环,