我遇到了(我相信会是)一个奇怪的问题,即关闭了一个表单并打开了另一个表单。
我在特定表单上有一个按钮(使用.ShowDialog
if可以打开,这会有所不同),单击该按钮时,将运行以下代码:
Me.Close()
LC.ShowDialog()
我希望包含按钮的窗体应该关闭,并且LC
窗体应该作为对话框窗体打开。实际发生的情况是Me
表单保持打开状态,并且LC
表单以主要焦点出现在表单后面。
为什么会这样呢?
更新1
只是为了澄清表格的设置:
me
窗体作为对话框打开(其中Form1是启动时启动的主要窗体)me
表格打开LC
表格,并应在此过程中关闭好的,看来您可能有受孕的问题...
让我们解决这个问题,如果调用me.close(),则要求表单终止自身并杀死他生成的所有表单。但是,这不是直接的,Windows消息会发布到您的应用程序,一旦完成功能,该消息就会被处理。
然后在那之后,您创建一个新表单,并说您要等待它关闭才能继续。
我不知道您的目的是什么,但是您有一些解决方案:
如果要在使用LC完成后返回到主窗体(Form1),请执行以下操作:
Me.Hide()
LC.ShowDialog()
=>Your code will pick up here when LC will be closed
Me.Show()
如果您不想再次打开Form1,则不要将其作为起始表单,也不要开始在Sub Main()中工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句