C#中 线程中使用messagebox的问题

2024-12-30 23:26:51
推荐回答(2个)
回答1:

请参考下面的代码
代码主要作用是在登录时,使用子线程验证用户名与密码是否正确
正确则弹出对话框提示登陆成功 并结束子线程 不正确反之
private void button1_Click(object sender, EventArgs e)
{
var uname = txtUName.Text.Trim();
var password = txtPwd.Text.Trim();
ThreadPool.QueueUserWorkItem(a =>
{
//你可以在这里链接数据库去验证你的用户名与密码是否正确
Thread.Sleep(5000);//我让子线程停止5秒钟以模拟你密码的验证
if (uname=="shelher"&&password=="1234")
{
MessageBox.Show(@"登录成功!");
Thread.CurrentThread.Abort();
}
else
{
MessageBox.Show(@"登录失败!!");
Thread.CurrentThread.Abort();
}
}, null);
}
如有疑问请追问

回答2:

其实登录窗体可以在启动主窗体前显示,登录成功之后,再 Application.Run(new 主窗体);