111,082
社区成员




private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2();
fDialogResult dr= frm .ShowDialog();
if (dr == DialogResult.OK)
{
所有功能都可以用
button1.可否使用=false;
Sleep(10*1000); 设置休眠时间
button1.可否使用=true;
}
else
{
所有功能不可用
button1.可否使用=true;
}
}
输入密码窗体
{
if (textBox1.Text == "123456")
{
this.DialogResult= DialogResult.OK;
this.Close();
}
else
{
this.DialogResult= DialogResult.NO;
this.Close();
}
this.Close();
}
public class 你的状态 : INotifyPropertyChanged
{
public bool 是否可用
{
get
{
return DateTime.Now < 最后解锁时间.AddMinutes(1);
}
}
string _pwd;
public string 密码
{
get
{
return _pwd;
}
set
{
_pwd = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("密码"));
}
}
public async Task 输入密码解锁(string input)
{
if (input == 密码)
{
最后解锁时间 = DateTime.Now;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("是否可用"));
await Task.Delay(1000);
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("是否可用"));
}
else
密码错误?.Invoke(input);
}
private DateTime 最后解锁时间 = DateTime.Now;
public event PropertyChangedEventHandler PropertyChanged;
public event Action<string> 密码错误;
}
bool flag = false;
private void button1_Click(object sender, EventArgs e)
{
if (!flag)
{
Form2 frm = new Form2();
frm.checkStatus += Frm_checkStatus;
frm.Show();
}
}
private void Frm_checkStatus(bool cflag)
{
flag = cflag;
thread = new Thread(changeFlag);
thread.Start();
}
Thread thread = null;
private void changeFlag()
{
while (flag)
{
Thread.Sleep(10*1000);
flag = false;
}
}
密码输入框
public delegate void Checkpassword(bool flag);
public event Checkpassword checkStatus;
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "123456")
{
checkStatus(true);
}
else
{
checkStatus(false);
}
this.Close();
}