gpt4 book ai didi

c# - 打开多个 MessageBox 实例并在几秒后自动关闭

转载 作者:太空宇宙 更新时间:2023-11-03 19:09:57 34 4
gpt4 key购买 nike

我在 Visual Studio 2012 下用 C# 编写 Windows 窗体代码,我想打开 MessageBox 的多个实例并在几秒钟后自动关闭它们

我在这里找到(并赞成)这个答案:SO: Close a MessageBox after several seconds .

但是,如果我一次只打开 1(一个)MessageBox,这会起作用,因为它使用函数 FindWindow,并且我的 MessageBox 的多个实例应具有相同的窗口标题(标题)。

[可选]此外,我想向用户显示倒计时,例如此对话框将在 5 秒后关闭此 [.. .] 在 4 秒内这个 [...] 在 3 秒内,...,这个 [...] 在 1 秒内 最后关闭消息框。

有没有办法唯一地引用我的多个 MessageBoxes 并自动关闭它们(使用 System.Timers.TimerSystem.Threading.TimerSystem .Windows.Forms.Timer - 在特定时间段(比如 5 秒)后,最适合此解决方案的那个)?

最佳答案

我建议不要为此任务使用 MessageBox。相反,制作您自己的自定义表单。使它成为您想要的大小、形状和外观。然后,在其代码隐藏文件中,您可以创建该窗口本身独有的计时器。这样,您可以随心所欲地生成它们,它们将管理自己的计时器并自行关闭,而您不必做任何事情,例如寻找窗口。可以使 Form 看起来非常像 MessageBox。因为您可以调用 ShowDialog,所以您也可以使它们的行为类似于 MessageBoxes(尽管这会适得其反,因为您一次只能与一个对话框交互)。

关于c# - 打开多个 MessageBox 实例并在几秒后自动关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21555999/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com