如何解决仅当用户从第二个表单成功登录后,才如何显示主表单?
我正在尝试制作一个验证用户登录的表格。我希望先显示该表单,然后,如果用户登录成功,则应显示主表单。
这是我尝试过的(第二种形式):
private void button1_Click(object sender,EventArgs e)
{
string funame = "thename";
string dep = "thedep";
string unm = "theusername";
string ups = "thepassword";
User cs = new User(funame,dep,unm,ups);
if (cs.validateLogin(unm,ups));
{
MessageBox.Show("Welcome " + funame + " of " + dep);
frmpurchasediscountedItem fpd = new frmpurchasediscountedItem();
fpd.Show();
}
}
问题在于主要表单总是首先弹出。
应该是这样的:
*然后弹出第二个表单,如果用户被验证,则会弹出主表单
解决方法
这是一种解决方法。
您无需在export default {
data: () =>({
data1: [],data2: [],lastData: []
}),mounted() {
asynchronous1(val,(data)=>{
return this.data1 = data
})
asynchronous2(val,(data)=>{
return this.data2 = data
})
function lastFuction() {
this.lastData = this.data1.concat(this.data2)
}
},}
中更改“开始表格”。您可以在开始时打开主窗口并将其隐藏。然后创建一个Login实例并显示它。
Program.cs
如果单击public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
Login login = new Login(this);
// hide MainForm
this.Hide();
// show Login
login.ShowDialog();
}
}
中的登录按钮,则显示Login form
并关闭MainForm
。
Login form
此外,如果单击public partial class Login : Form
{
private MainForm mainform = null;
public Login(MainForm main)
{
InitializeComponent();
// get MainForm instance
this.mainform = main;
}
// if success
bool success = true;
private void btnLogin_Click(object sender,EventArgs e)
{
if(success) // check login here
{
// show main form
mainform.Visible = true;
// close login form
this.Close();
}
}
}
右上角的X button
,它还将显示隐藏的Login form
(如果用户不想登录,请关闭应用程序)。我们可以通过覆盖MainForm
来避免这种情况。
WndProc
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。