模态弹出窗口错误会阻止MDI父GUI更新

时间:2010-08-31 15:13:37

标签: c# .net error-handling modal-dialog

我正在制作一个与微控制器通信的Windows应用程序。有时,会发生需要标记给用户的通信错误。例如,如果电缆拔出或微控制器断电。

我现在一直在努力解决这个问题,我回到原来的解决方案。最初的解决方案是制作弹出窗口,但是,其他则令人讨厌,有时会阻止MDI父GUI更新它的显示。当弹出窗口仍处于打开状态并且会导致问题时,可能会发生一些事情。

我尝试过弹出非模态,虽然这有助于GUI,老板不喜欢弹出窗口可能被其他窗口隐藏。

标记错误的最佳做法是什么?

顺便说一句,我有另一个线程,我的备用解决方案有问题: Tooltip baloon display position (for error notification)

2 个答案:

答案 0 :(得分:1)

还有其他与用户通信的方式...系统托盘中闪烁的图标,主窗口上的状态指示灯在连接丢失时从绿色变为红色。

*更新*

闪烁系统托盘中的图标就像创建计时器一样简单,并且在勾选事件中,显示/隐藏图标或将其从一个图标切换到另一个图标。你可以在这里找到一个例子:
http://www.freevbcode.com/ShowCode.asp?ID=6826

重新阅读问题...如果您想要闪烁任务栏窗口,还有更多内容......我不会采用这种方法,因为(1)闪烁的任务栏可以被用户禁用, (2)没有任何迹象表明它为何眨眼。但如果这就是你想要的,请看这里:
http://pietschsoft.com/post/2009/01/26/CSharp-Flash-Window-in-Taskbar-via-Win32-FlashWindowEx.aspx

答案 1 :(得分:0)

你可以制作一个窗口最顶层而不用模态...你在编写什么语言?

相关问题