如何解决C#上班时间/上班时间-总工作时间
问题:创建一个程序,该程序由“时钟输入”按钮,“时钟输出”按钮和“标签”组成,以保存总工作时间。
这段代码似乎应该很简单,但是我知道我缺少一些东西。我无法从inButton单击中获取DateTime clockIn,而不能与outButton单击中的TimeSpan一起使用。我对C#还是很陌生,因此欢迎提出任何批评。谢谢!
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TimeClock
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void inButton_Click(object sender,EventArgs e)
{
DateTime clockIn = DateTime.Now;
}
public void outButton_Click(object sender,EventArgs e)
{
DateTime clockOut = DateTime.Now;
TimeSpan timeWorked = clockOut - clockIn;
string timeWorkedReport = $"Time worked = {timeWorked.Hours} hours,{timeWorked.Minutes} minutes";
timeLabel.Text = timeWorkedReport;
}
}
}
解决方法
最重要的是,您需要阅读有关可变作用域和数据成员的信息。
重要的是-可以正常工作:
我刚刚将您的变量提升为Class Data成员。
public partial class Form1 : Form
{
DateTime clockIn = DateTime.Min; // Move Here
public Form1()
{
InitializeComponent();
}
public void inButton_Click(object sender,EventArgs e)
{
clockIn = DateTime.Now;
}
public void outButton_Click(object sender,EventArgs e)
{
DateTime clockOut = DateTime.Now;
TimeSpan timeWorked = clockOut - clockIn;
string timeWorkedReport = $"Time worked = {timeWorked.Hours} hours,{timeWorked.Minutes} minutes";
timeLabel.Text = timeWorkedReport;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。