0

我在一个名为“sys”的类中有一个名为 notify 的子。我使用这个子作为通知表来代替通知图标/气球提示。

所以它看起来像这样......

sys.notify("message")

我的问题是我需要能够显示通知并在不久之后关闭表单。我现在的方式是在通知仍处于活动状态时关闭表单,并且通知被切断。

即使在调用它的表单关闭后,有什么方法可以让它继续运行,还是我必须等到通知完成才能关闭表单?

4

2 回答 2

0

关键是启动一个不是背景的线程。这样您的表单将被关闭,但该进程将继续运行,直到该非后台线程完成,从而使您的气球提示可见。

到要显示 baloontip 的位置(子或函数)放置:

Dim x As New Threading.Thread(AddressOf somesub)
x.IsBackground = False
x.Start()

并将其放在某处:

Private Sub somesub()
        sys.notify("message")
End Sub
于 2012-12-06T21:29:38.007 回答
0

有可能。

1)通知部分:将其编码在不同的线程中,因此即使关闭主窗体也不会关闭。

2)更简单的方法:在主窗体关闭事件中,检查通知部分是否显示或主窗体不可见,如果没有,则关闭窗体。如果是,隐藏表单(不可见),并中止关闭事件。在 notify 部分,在关闭 notify 时,检查主窗体是否不可见,如果是,则关闭它,然后关闭 notify。

2)中的关键是使主窗体不可见而不是关闭。

于 2012-12-06T20:18:54.377 回答