C# 父窗体打开子窗体,在父窗体关闭后调用子函数
本文关键字:窗体 子函数 调用 | 更新日期: 2023-09-27 18:30:37
长话短说...我需要Form_1才能打开Form_2。我需要Form_2来执行代码,在隐藏Form_1之后。(无用户干预)
目前,我的Form_1代码是这样....
function myFunction(){
// Create a new instance of the child form class
Form2 F2 = new Form2(this,d);
// Minimise current form
this.Hide();
// Show the child form
F2.Show();
}
F2.然后,Show 从事件启动Form2_Shown进一步的代码。
问题是我需要在 Form1 完全隐藏后运行Form2_Shown代码。因为 Form1.myFunction 调用 F2。Show(),那么Form2_Shown就会发生,而 Form1 并没有完全"退休"。
有没有办法将这一系列事件分开以获得预期的结果?开放式Form_2关闭Form_1在Form_2中运行代码,没有剩余的Form_1连接?
线程??(他不知地说)
在你问之前...这适用于屏幕捕获应用程序。Form_1是带有按钮的 UI。Form_2是全屏透明形式。因为Form_1挂在那里,所以会导致黑色图像。
如果我使用相同的模型,但在Form_2中通过按键触发屏幕捕获,那么一切正常。
希望这是有道理的。如果需要,我当然可以发布大量代码。
非常感谢。
您可以在 Form2 的构造函数中传入对 Form1 的引用。然后从 Form2 的构造函数调用 Form1.Hide() 方法。然后,从 Form2 的构造函数调用 Form2 上的 Show() 方法。