让程序等待点击事件

时间:2010-11-22 07:54:55

标签: c# events click

我希望程序等待点击事件发生。这是我点击事件的代码。该程序贯穿其中。为了给你上下文,这是一个othello程序,这是在人类转向的时候。

可悲的是,该程序贯穿始终并且AI播放器继续运行。

for (int i = 0; i < 8; i++)
        {
            for (int j = 0; j < 8; j++)
            {

                textboxes[i, j].Click += new EventHandler(textboxes_Click);
                textboxes[i, j].Tag = new GridIndex() { ipos = i, jpos = j };

            }
        }

然后我处理textboxes_Click。

感谢您的帮助! -Lewis

1 个答案:

答案 0 :(得分:1)

这只是在点击某些东西时添加要执行的处理程序(尽管我不相信文本框真的是在这里使用的最佳控件)。

您需要以基于事件的方式考虑GUI编程:您不会指导用户执行的控制流程。你设置了一切,以便在事件发生时,你做出适当的反应。

因此,在设置事件处理程序后,不要让AI播放器立即进入,而是应该对人类玩家做出反应,让AI玩家随后转向 - 假设转弯当然是有效的。换句话说,你对人类玩家的回应作出反应的事件处理程序应该包括逻辑来解决接下来的转弯问题,如果是人工智能则转弯。 (这个通用逻辑应该封装在另一个方法中,并在AI轮到之后执行 - 这样你就可以让两台计算机相互对战,或者两个人等等。)