WinForm中关于窗体如何隐藏的迷惑

好好学习29 2012-09-17 02:28:54
当前程序运行时先加载F1窗体(登录窗体),接着加载F2窗体(菜单框架)。

现在要实现的效果为:先加载F1窗体,判断登录成功才加载F2窗体(这种不会实现,有谁会的可以教教我

我现在的思路是把F1,F2两个窗体全部加载后,然后隐藏F2窗体,接着判断是否登录成功,如果成功我就显示F2窗体。

缺点在于F1,F2两个窗体全部加载完,然后隐藏F2窗体(这个时候可以明细看出F2窗体出现了一下,然后消失)

怎么解决这种问题呢,求各位给点思路..

...全文
173 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
好好学习29 2012-09-28
  • 打赏
  • 举报
回复
谢谢大家的思路
超级大咸鱼 2012-09-18
  • 打赏
  • 举报
回复
最简单的方法 不用在代码里改,

F2界面的Visible属性直接设为false。

然后show出2个窗体,

再判断登录是否成功,

最后修改F2的Visible属性为true
xuguorong 2012-09-17
  • 打赏
  • 举报
回复
先加载登录窗体,登录后判断是否成功,若成功,关闭登录窗体,执行主界面,否则不关闭登录窗体。
假如Form1是登录窗体,IsLogin是Form1里面的静态变量判断Form1是否登录成功,Form2是主窗体。
在Program中:

Main()
{
Form1 form=new Form1();
form.ShowDialog();
if(Form1.IsLogin)
{
Form2 form2=new Form2();
form2.ShowDialog();
}

}




好好学习29 2012-09-17
  • 打赏
  • 举报
回复
求调教...
好好学习29 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

上面已经说了

C# code
LoginForm lf = new LoginForm();//创建登录窗体
DialogResult dr = lf.ShowDialog();
if (dr == DialogResult.OK)//登录通过
{
Application.Run(n……
[/Quote]
现在程序先加载的是菜单窗体,在不改变窗体加载顺序的情况下,怎么解决这种问题
鲸碳耗 2012-09-17
  • 打赏
  • 举报
回复
启动后值只加载并显示Form1 判断登入成功后加载Form2 Show出来 Form1隐藏 这样可行
csdn_风中雪狼 2012-09-17
  • 打赏
  • 举报
回复
先加载登录窗体,
登录成功后,就加载主窗体
  • 打赏
  • 举报
回复
上面已经说了

 LoginForm lf = new LoginForm();//创建登录窗体
DialogResult dr = lf.ShowDialog();
if (dr == DialogResult.OK)//登录通过
{
Application.Run(new Form1());//加载主窗体
}
好好学习29 2012-09-17
  • 打赏
  • 举报
回复
好冷清的帖子
好好学习29 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

可以在入口中写
C# code

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
//启动主窗体前,先创建登陆窗体,成功后继续,否则直接退出 ……
[/Quote]
晕,我说反了:
当前程序运行时先加载F2窗体(菜单框架),接着加载F1窗体(登录窗体)

现在要实现的效果为:先加载F1窗体,判断登录成功才加载F2窗体(这种不会实现,有谁会的可以教教我。程序里

面的代码都写好了,如果改变窗体的加载顺序,我觉得会出问题)

我现在的思路是把F1,F2两个窗体全部加载后,然后隐藏F2窗体,接着判断是否登录成功,如果成功我就显示F2窗体。

缺点在于F1,F2两个窗体全部加载完,然后隐藏F2窗体(这个时候可以明细看出F2窗体出现了一下,然后消失)

好好学习29 2012-09-17
  • 打赏
  • 举报
回复
晕,我说反了:
当前程序运行时先加载F2窗体(菜单框架),接着加载F1窗体(登录窗体)

现在要实现的效果为:先加载F1窗体,判断登录成功才加载F2窗体(这种不会实现,有谁会的可以教教我)

我现在的思路是把F1,F2两个窗体全部加载后,然后隐藏F2窗体,接着判断是否登录成功,如果成功我就显示F2窗体。

缺点在于F1,F2两个窗体全部加载完,然后隐藏F2窗体(这个时候可以明细看出F2窗体出现了一下,然后消失)

怎么解决这种问题呢,求各位给点思路..
bdmh 2012-09-17
  • 打赏
  • 举报
回复
可以在入口中写

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
//启动主窗体前,先创建登陆窗体,成功后继续,否则直接退出
Application.Run(new Form1());
}

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧