【问题标题】:Console wait until left mouse button down控制台等到鼠标左键按下
【发布时间】:2015-05-06 19:47:47
【问题描述】:

我有一个问题,我的控制台应用程序在随机点等待,直到我按下鼠标左键。该应用程序是用 C# 编写的。我不在我的应用程序中使用ReadKey 或其他东西(它甚至应该等待按键而不是鼠标)。

有人遇到过类似的问题吗?

谢谢!

【问题讨论】:

  • 中断执行(使用调试器或外部工具,如 Managed Stack Explorer 或 CLRStackExplorer。您应该能够准确地看到是什么停止了您的应用

标签: c# console mouse wait


【解决方案1】:

也许您在您的应用程序中启用了快速编辑模式(属性->选项->编辑选项)。然后,如果您单击光标进入选择模式,应用程序似乎会停止,直到您再次单击。

我已经做了一些检查...似乎如果您进入快速编辑模式(并且您没有退出它),下一次程序将执行Console.Write 或类似的程序将是“暂停”。显然,不写任何东西输出的程序不受这个问题的影响。

所以:

for (int i = 0; ; i++) { }

免疫快速编辑。

同时

for (int i = 0; ; i++) { Console.Write(i); }

不能免疫:-)

【讨论】:

  • 哦,谢谢,但它不仅似乎停止了,它真的停止了还是我错了?
  • @BendEg 复杂的测量 :-) 等一下 :-)
  • @BendEg 我会说它会暂停对控制台的下一次写入。这是什么意思? while(true) { i++; } 不会被暂停,会继续加 1,而while(true) { Console.Write(i++); } 会停止。读取似乎是非阻塞的
  • 谢谢,那是我不知道的关于Console.WriteLine 的事情。您想将此添加到您的答案中吗? :)
  • @BendEg 完成。添加了我做过的测试结果
猜你喜欢
  • 2011-04-26
  • 2011-02-28
  • 2011-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-27
  • 1970-01-01
相关资源
最近更新 更多