我有一个登录表单,我需要关闭而不会终止整个应用程序。我尝试过使用Me.Close(),Me.Hide()。登录表单也用作主表单。
答案 0 :(得分:8)
我希望这是有道理的......
听起来你有一个VB.Net项目,而你的登录表单就是你的'启动形式'。当您关闭该表单时,您的应用程序认为它已结束;但是你真的想在关闭登录表单后采取行动。
如果您打开项目的“属性”窗口,则可以在“应用程序”选项卡上设置“关闭模式”。默认值是“启动表单关闭”时。将其更改为“当最后一个表单关闭时”。
您还可以在此处添加应用级事件。 http://msdn.microsoft.com/en-us/library/f2bys999(v=vs.80).aspx
如果你坚持你的方式;您的登录表单必须在关闭之前创建另一个表单,否则您的应用程序将关闭。你可以这样做;但是将登录逻辑移动到应用程序启动事件中可能更干净(有关更多详细信息,请参阅链接)。
在启动活动中,您可以显示“登录”屏幕,获取结果,决定是否要显示应用程序的主要表单等等。
答案 1 :(得分:0)
这取决于您尝试关闭或隐藏表单的位置。如果您试图从表单本身中关闭或隐藏表单,则Me.Close()和Me.Hide()可以完成工作。如果您试图关闭或隐藏其他表单(如主表单)中的表单,则必须参考表单实例示例:
frmAbout.Close()
frmAbout.Hide()
我希望这会有所帮助。