我正在创建emp_attendance
注册。在我的表单中有两个命令按钮Time-in和Time-out。我希望员工每天能够点击timein
和timeout
按钮。
有可能吗?
答案 0 :(得分:1)
你可以肯定这样做,但你必须自己处理它。只需在某处设置一个标记,以提醒您用户已按下某个按钮,并在每次打开表单时使用此标志设置按钮的Enabled
属性。
<强>&GT;&GT;&GT;更新&lt;&lt;&lt;
这样的事情应该有效:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace TFF
{
public partial class Form1 : Form
{
private static DateTime? button1ClickAt = null;
private static DateTime? button2ClickAt = null;
public Form1()
{
InitializeComponent();
HandleButtonEnable();
}
private void button1_Click(object sender, EventArgs e)
{
button1ClickAt = DateTime.Now;
HandleButtonEnable();
}
private void button2_Click(object sender, EventArgs e)
{
button2ClickAt = DateTime.Now;
HandleButtonEnable();
}
private void HandleButtonEnable()
{
button1.Enabled = (button1ClickAt == null || button1ClickAt.Value.Date != DateTime.Now.Date);
button2.Enabled = (button2ClickAt == null || button2ClickAt.Value.Date != DateTime.Now.Date);
}
}
}
每次按下按钮都会更新相应的时间戳:如果从未点击过按钮,或者在不同的日期点击按钮,则启用按钮(因此您每天只能点击一次按钮)。
答案 1 :(得分:0)
是的,这是可能的,可以通过两种方式完成,
button
。如果 EMP 选择button
内容根据您的按钮点击事件从TIME IN更改为TIME OUT。buttons
,设置按钮点击事件以更改其他按钮的属性,如{{1} }或enabled
。因此 EMP 只能选择一个按钮。答案 2 :(得分:0)
button1.Attributes.Add("onclick", "this.disabled =true;" + ClientScript.GetPostBackEventReference(button1, null) + ";");
这会使您的按钮在单击后失效。
答案 3 :(得分:0)
是的,任何事情都可能在IT中,这取决于你的方法......
在两个按钮的点击事件上写一些逻辑,可能是 - 在数据库中的同一天为该员工存储一个比特值,成功提交检查比特值后,只需禁用按钮并执行第二次按钮点击事件的逻辑相同。
希望这会为你创造一些逻辑。如果需要更多解释请告诉我......