【发布时间】:2015-08-15 02:36:30
【问题描述】:
当我尝试将字体颜色设置为黄色时,我搞砸了我的代码。请帮忙!!
说明: 创建一个包含两个文本框和两个按钮的 Windows 应用程序。文本框应该用于允许用户输入两个正数值。这些按钮应标记为“加”和“乘”。创建检索值、执行计算并在标签上显示计算结果的事件处理程序方法。结果标签最初应设置为不可见,字体颜色为黄色。如果输入了无效数据,请将结果标签上的字体颜色更改为红色并显示消息“值必须为数字且 >0”。显示最终答案时,字体颜色应为黄色。文本框标题需要额外的标签。不允许输入非数字字符。调用 TryParse() 方法来检索值。程序语句中涉及的所有控件都应命名。右对齐文本框中的值。
这是我在 form1 页面上得到的内容
namespace Add_and_Multiply
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int val1;
int val2;
val1 = Convert.ToInt32(textBox1.Text);
val2 = Convert.ToInt32(textBox2.Text);
label3.Text = Convert.ToString(val1 + val2); //after this line I tried putting the code to give me yellow color text and now I have so many errors:(
}
private void button2_Click(object sender, EventArgs e)
{
int val1;
int val2;
val1 = Convert.ToInt32(textBox1.Text);
val2 = Convert.ToInt32(textBox2.Text);
label3.Text = Convert.ToString(val1 * val2);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
谁能帮帮我?我不太擅长这个。 谢谢
有人告诉我要这样修复它。
namespace Add_and_Multiply
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int val1;
int val2;
if(!int.TryParse(textBox1.Text.Trim(), out val1))
{
lblYellow.ForeColor = Color.Yellow;
lblYellow.Visible = true;
lblYellow.Text = "First value is invalid";
return;
}
if(!int.TryParse(textBox2.Text.Trim(), out val2))
{
lblYellow.ForeColor = Color.Yellow;
lblYellow.Visible = true;
lblYellow.Text = "Second value is invalid";
return;
}
lblYellow.Visible = false;
label3.Text = Convert.ToString(val1 + val2);
}
private void button2_Click(object sender, EventArgs e)
{
int val1;
int val2;
if(!int.TryParse(textBox1.Text.Trim(), out val1))
{
lblYellow.ForeColor = Color.Yellow;
lblYellow.Visible = true;
lblYellow.Text = "First value is invalid";
return;
}
if(!int.TryParse(textBox2.Text.Trim(), out val2))
{
lblYellow.ForeColor = Color.Yellow;
lblYellow.Visible = true;
lblYellow.Text = "Second value is invalid";
return;
}
lblYellow.Visible = false;
label3.Text = Convert.ToString(val1 * val2);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
但我收到一个错误“名称 'lblYellow' 在当前上下文 Form1.cs 中不存在”我应该在 private void button1_click 行之前声明它吗?
【问题讨论】:
-
也许你应该清楚这是否是一个家庭作业问题。
-
是的,很抱歉不清楚。
标签: c# windows-applications eventhandler tryparse