一. 窗体间的跳转
1. 第一种打开窗体,原本窗体保留在窗口
创建两个窗体
登录成功后我们调转到QQ主界面,在登录时编写调转代码
new出来我们要跳转的窗体, 通过Show()显示窗体
登录成功后显示第二个窗体。
2. 第二种打开后关闭登录窗口
this.Hide(); //通过方法隐藏窗体
this.Visible=false; //通过属性隐藏窗体
登录成功后,只会QQ主界面,登录界面自动隐藏
3. 关闭窗体后,如果在运行会报错,程序未关闭
如何解决呢? 因为我们的程序在关闭时,为把主程序关闭,只是把主程序隐藏了,所以会报错,此时需要在任务管理器中找到我们运行的文件名称,关闭进程即可
此时在运行就没有问题了
我们不能每次都在进程中关闭程序,所以我们需要在最后运行的窗体中加上关闭程序命令Application.Exit()
找到FormClosing
编写Application.Exit()关闭代码
此时就可以解决我们的问题了
二. 窗体间的数据传递
如何把第一个窗体传递到第二个窗体呢?我们如何再登录的时候把登录的用户名传递到我们显示主界面上去?接下来我们学习两种传递方法
第一种:通过属性进行传递
创建一个字段和属性,把我们输入进去的值存到字段里。
双击QQ主界面进入代码编辑模式,编辑加载事件
我们编写一个字段和属性,在加载的时候赋值即可
打开登录界面,双击登录按钮,编写单击事件
通过属性存储我们输入的值,这样就建立好了两个窗体之间的传值
测试一下
第二种:通过构造方法传值
右击查看代码
编写带参数的构造方法
打开登录界面,双击登录按钮,编写单击事件
创建窗体的时候,进行传值
测试一下