新手的问题,不要见笑

时间:2021-12-17 11:25:26
是这样的,我新建一个visual c#的项目,模板选择windows应用程序,这个程序中有两个Form,Form1是主程序,Form2是个登陆窗口,我想这样子,当打开这个程序时,先出现Form2这个登陆窗口,输入用户名和密码正确后再进入主程序,可是我在Form1中实例并显示Form2后,我怎么样才能让程序停下来?不出现Form1的主界面程序呢?
还有,假设Form2出现后程序停下来等待用户登陆,当用户名密码确认后,这时我又如何通过Form2来让Form1的主程序继续执行?我总不能在Form2中在实例Form1吧?那不可能亚!


我是新手,可能说不明白问题,或者是我的思路本身有问题,请各位大哥帮忙说说该怎么做?

7 个解决方案

#1


再Form1中实例Form2

#2


在Form1中的事件
private void button1_Click(object sender, System.EventArgs e)
{
this.Hide();
Form2 frm2;
frm2 = new Form2();
frm2.ShowDialog(this);
}
在Form2中的事件
private void button1_Click(object sender, System.EventArgs e)
{
this.Close();
    if (登录不成功)
this.Owner.Close();
this.Owner.Show();
}

#3


对亚,我已经这样做了!
主程序的main方法
static void Main() 
{
Application.Run(new Form1());
}

主程序的构造方法
public Form1()
{
form2zwh = new Form2();
//form2zwh.Show();

if (yz()==1)
{
Application.Exit();
return;
}
else
{InitializeComponent(); }
}

我在调用yz时form2zwh.Show();我本来想通过yz()这个方法来控制form1的,可是不行!

#4


static void Main() 
{
    Form2 fr = new Form2();
    if(fr.ShowDialog() != DialogResult.OK) return;
    Application.Run(new Form1());
}

你可以照这样写

#5


哦!!这样亚!我去试试

#6


TO: ismezy2002(口水大军)

我怎么让if(fr.ShowDialog() != DialogResult.OK)不成立,就是如何让fr.ShowDialog()等

于DialogResult.OK,我的Form2是个窗体!!!在Form2中怎样写?

#7


ok

知道了,谢谢各位!

#1


再Form1中实例Form2

#2


在Form1中的事件
private void button1_Click(object sender, System.EventArgs e)
{
this.Hide();
Form2 frm2;
frm2 = new Form2();
frm2.ShowDialog(this);
}
在Form2中的事件
private void button1_Click(object sender, System.EventArgs e)
{
this.Close();
    if (登录不成功)
this.Owner.Close();
this.Owner.Show();
}

#3


对亚,我已经这样做了!
主程序的main方法
static void Main() 
{
Application.Run(new Form1());
}

主程序的构造方法
public Form1()
{
form2zwh = new Form2();
//form2zwh.Show();

if (yz()==1)
{
Application.Exit();
return;
}
else
{InitializeComponent(); }
}

我在调用yz时form2zwh.Show();我本来想通过yz()这个方法来控制form1的,可是不行!

#4


static void Main() 
{
    Form2 fr = new Form2();
    if(fr.ShowDialog() != DialogResult.OK) return;
    Application.Run(new Form1());
}

你可以照这样写

#5


哦!!这样亚!我去试试

#6


TO: ismezy2002(口水大军)

我怎么让if(fr.ShowDialog() != DialogResult.OK)不成立,就是如何让fr.ShowDialog()等

于DialogResult.OK,我的Form2是个窗体!!!在Form2中怎样写?

#7


ok

知道了,谢谢各位!