问题描述
|
我已经编写了一个C#桌面应用程序,当它等待特定事件时(如下所示,在一个循环中...
while (tf.Exists)
{
System.Threading.Thread.Sleep(100);
System.Windows.Forms.Application.DoEvents();
}
我可以整合我的应用程序并将其最小化,但是我无法还原它。
有时候,我可以通过用鼠标按键疯狂地单击来恢复它的状态,但是在大多数情况下它无法恢复。
有谁知道我在循环中做错了什么?
谢谢 ,
格雷格
解决方法
如果不知道这段代码是如何开始的,就无法进行复制。无论如何,您永远都不想这样做,它允许用户关闭您的主窗口。现在您的循环仍在运行,但没有用户界面。
请改用计时器。在处理程序中对其Tick事件执行检查。
, 与其轮询和呼叫ѭ1(这很少是一种有效的方法),还不如安排感兴趣的事件向您发送消息或触发事件。