欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解C#切换窗口

程序员文章站 2022-09-07 11:26:10
最近项目不多忙,于是抽点时间巩固下切换窗口问题,感兴趣的朋友跟着小编一起学习吧! 1、第一个方法比较简单,也比较萌,是我最近无意间发现的~ public...

最近项目不多忙,于是抽点时间巩固下切换窗口问题,感兴趣的朋友跟着小编一起学习吧!

1、第一个方法比较简单,也比较萌,是我最近无意间发现的~

public mainfrom_client()
{
initializecomponent();
setmaintreadstate();
}
//先设定主窗体(也就是mainfrom_client)的透明度和任务栏状态
private void setmaintreadstate()
{
//这个其实是障眼法!把主窗体(也就是mainfrom_client)的弄成隐形的,
//只需要把opacity改成就出来了,哈哈哈哈哈哈哈哈
this.opacity = ;
//然后在把菜单栏运行的显示也隐形掉
this.showintaskbar = false;
}
private void resetmainthreadstate()
{
this.opacity = ;
this.showintaskbar = true;
//把当前控件带到前面来就好了
this.bringtofront();
}

此时窗体是隐形的,可以随便重新设定一个函数,等满足设定的某个特定条件时就调用resetmainthreadstate()函数,这样主窗体mainfrom_client就会显示出来了~

萌萌哒的掩耳盗铃方式~

2、还有一个就是实打实的窗体调用问题了(查了好久的知识,累死宝宝了t^t)

我的program.cs文件,先确定最先出现的登录界面login_interface()。

static void main()
{
application.enablevisualstyles();
application.setcompatibletextrenderingdefault(false);
login_interface login_ = new login_interface();
login_.show();
application.run();
} 

一般的program.cs文件里都是application.run(new login_interface());,这样最大的问题就是,如果我从登录界面进入用户界面,想要关闭登录界面的话,系统就会自动以为你退出了程序,这样我就没办法进入到用户界面,此时如果我非要进入用户界面的话,就可以用类似1的方法,用隐藏等各种方式以此不显示登录界面。

这种方法其实不错,可是我就是有点死性子,所以我一定要关闭登录界面,所以在program.cs中设定好了application.run();,这样我后面怎么“虐待”登录界面,都不会影响程序的继续使用。

然后就是我的登录界面的程序了~简单了吧~

#region 由登陆界面进入到用户界面
private void button_click(object sender, eventargs e)
{
if (textbox_username.text == "" && textbox_password.text == "")
{
this.close();
user_panel fm = new user_panel();
fm.show();
}
else
{
messagebox.show("用户名与密码错误,请重新输入");
}
}
#endregion

以上内容是针对c#切换窗口的相关介绍,希望对大家有所帮助!