【发布时间】:2019-03-14 10:13:19
【问题描述】:
您好,我有简单的代码,想要一键控制标签:
private void button1_Click(object sender, EventArgs e)
{
bool T=true;
if (T)
{
label1.Text = "GOOD";
T=false;
}
else if(!T){
label1.Text = "BAD";
T=true;
}
}
问题是,每次我按下按钮时,它都声明为 true,并且每次都是 true 条件。我不能这样声明
bool T;
因为收到错误:
CS0165 使用未分配的局部变量“T”WindowsFormsApp1
我怎样才能声明一次?
【问题讨论】:
-
使用字段而不是局部变量。分配一个适合的默认值(即,决定您是否希望它默认为
true或false)。那么你可能想要label1.Text = T ? "GOOD" : "BAD"; T = !T -
在方法外部声明它并像在方法内部一样给它一个起始值
-
我看不出你真正想要实现什么。一开始
T总是为真,使第一个条件allways 适合。这会将T更改为false,使第二个条件适合(我想您想要iì f,而不是else if)。所以在我看来,两个分支都应该始终执行,使条件变得毫无意义? -
这段代码似乎暗示你需要更好地理解变量作用域的概念。
-
为什么我的帖子被否决了?我只是试着学习......
标签: c# button triggers declaration