C#三次一次爆炸

时间:2012-04-25 18:14:44

标签: c# boolean

我在c#中有三个布尔值。每个都允许打开不同的菜单。但是,在任何给定时间只能有一个是真的。因此,如果我按下一个按钮并且该按钮将相应的布尔值true转换为相应的菜单,但我想要一个光滑的检查,如果它们为真,则在将该布尔值设置为真之前将其他假设为假。不确定这是否有意义。感谢您提前提供任何帮助。

2 个答案:

答案 0 :(得分:7)

听起来你想要一个变量,可能使用枚举:

public enum ActiveMenu
{
    None,
    Settings,
    MainMenu,
    OtherMenu
}

然后有一个ActiveMenu类型的变量,显然一次只能保存一个值。这比使用三个独立(但又不可避免地缠绕在一起)的布尔变量感觉更合理。

答案 1 :(得分:4)

将所有三个布尔值都设为假,然后将其变为你想要的那个。