长话短说...... 我需要Form_1才能打开Form_2。 在隐藏Form_1之后,我需要Form_2来执行代码。 (没有用户交互)
目前,我的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(),所以当Form1没有完全“退役”时,Form2_Shown将会发生。
有没有办法分离这一系列事件以获得理想的结果? 打开Form_2 关闭Form_1 在Form_2中运行代码而没有与Form_1的剩余连接?
线程? (他说是愚昧地说)
在你问之前......这是一个屏幕捕获应用程序。 Form_1是带按钮的UI。 Form_2是全屏透明表单。 因为Form_1挂在那里,它会导致黑色图像。
如果我使用相同的模型,但触发了Form_2中按键的屏幕截图,那么一切都运行良好。
希望这是有道理的。 如果需要,我当然可以发布大量的代码。
非常感谢。
答案 0 :(得分:1)
您可以在Form2的构造函数中传递对Form1的引用。然后从Form2的构造函数调用Form1.Hide()方法。然后,从Form2的构造函数调用Form2上的Show()方法。