Visual Studio 2010(VS)--消消乐定制版⑦

Visual Studio 2010(VS)--消消乐定制版⑦

 

上期回顾(上期主要是做了一个定时器,当单机了两个控件的时候,延时750ms后隐藏控件):

Visual Studio 2010(VS)--消消乐定制版⑦

这期要比对第一次选择的图形跟第二次的是不是一样,如果一样就一直显示,不一样则定时隐藏

1.0 在单机组件响应程序label_Click中,最后修改一段代码,

if (clickedLabel != null)

            {

                //如果目前在显示的控件的前景色时黑色,就返回退出,不然就赋值为黑色

                if (clickedLabel.ForeColor == Color.Black)

                    return;

                //clickedLabel.ForeColor = Color.Black;

 

                //如果目前标签为空,如果单击第二次,这时候firstClicked就不会为空了

                if (firstClicked == null)

                {

                    firstClicked = clickedLabel;//那他就跟踪当前单击的控件标签

                    firstClicked.ForeColor = Color.Black;//让他的前景色单独变成黑色,才能显示

 

                    return;//当第一次单击后,会用return跳出这个单机响应程序

                }

                //将secondClicked引用变量跟踪第二个Label控件

                secondClicked = clickedLabel;

                secondClicked.ForeColor = Color.Black;//显示黑色

                //假如第一次单机的控件显示内容跟第二次的相同则不隐藏,清空引用变量

                if (firstClicked.Text == secondClicked.Text)

                {

                    firstClicked = null;

                    secondClicked = null;

                    return;

                }

                else 

                //当第二次的时候开启定时器

                    timer1.Start();

            }

Visual Studio 2010(VS)--消消乐定制版⑦

2.0 注解:这里解释下单等号与双等号的区别

firstClicked.Text == secondClicked.Text

firstClicked = null;

这两个语句中的第一句检查两个图标文字是否相同。 因为要比较两个值,所以 Visual C# 程序使用 == 相等运算符。 第二个语句实际上更改值(称为“赋值”),将 firstClicked 引用变量设置为等于 null 以重置它。 这就是使用 = 赋值运算符的原因。 Visual C# 使用 = 设置值,使用 == 比较值。 Visual Basic 使用 = 进行变量赋值和比较。

3.0 保存,按F5开始调试,然后单机窗体的图标,如果两个图标内容不符,会触发定时器隐藏,如果两个图标内容相同,则会保持显示

Visual Studio 2010(VS)--消消乐定制版⑦