【发布时间】:2017-09-22 15:07:26
【问题描述】:
Visual Studio C#
我做了一个计算器,现在我要做一个计算器记忆(事件)。
除了计算器之外还有4个组件:一个Textbox用于计算器的答案,两个Button用于“M”和“M+”,还有一个Lable用于再次显示答案。
当用户单击“M”按钮时,应将答案文本框的内容复制到内存变量中。还要使当用户将鼠标移到标签上时,内存变量中的值将出现在此标签中,然后在鼠标移开标签时消失。还要添加一个按钮,一个“M+”按钮。当用户单击此按钮时,结果框的内容将被添加到内存中。您将需要使用全局变量来存储这些数据。
我的问题是当鼠标悬停在标签上时标签没有出现,当鼠标离开标签时它也没有消失。我该如何解决?
另外,这种方式是使用全局变量的正确方法吗?
下面是我的代码(我只是放了“M”和“M+”按钮的代码,而不是计算器的代码)。
private String ans;
private Double answer;
private Double answerPlus;
private void btnM_Click(object sender, EventArgs e)
{
ans = txtDisplay.Text;
answer = double.Parse(ans);
lblblank.Text = answer.ToString();
}
private void lblblank_MouseEnter(object sender, EventArgs e)
{
lblblank.Show();
lblblank.Text = answer.ToString();
}
private void lblblank_MouseLeave(object sender, EventArgs e)
{
lblblank.Hide();
}
private void btnMplus_Click(object sender, EventArgs e)
{
answerPlus = answer + double.Parse(ans);
lblblank.Text = answerPlus.ToString();
}
【问题讨论】:
-
我的猜测是您将这些事件绑定到标签而不是按钮。所以你在等待鼠标输入一个不可见的标签。
-
不要隐藏/显示标签,只需将其文本设置为空白或您要在其中显示的值。
标签: c# visual-studio