我开始制作一款3D游戏。然后我停了一段时间并安装了win7。 现在我想继续努力只是为了发现代码冻结了! 在XP上我将视图渲染到窗体上。和游戏循环和所有游戏形式在同一个线程上运行!
这在XP上工作。 现在在win7中,3d循环仍然可以正常工作但是所有表单都不希望与它在同一个线程上工作。
我记得在vb中被称为“doevents”的东西不确定c#中是否有这样的东西......
我试图重绘主循环中的所有表单。 现在所有的标签都更新但是表格没有获得键输入,并且在一段时间后冻结,直到Windows告诉我我的应用程序被卡住(所有这些和主循环运行并呈现3D没有问题)
我不明白为什么所有人都在XP中的同一个线程上工作,而在win7中看起来我需要为表单制作一个线程系统!
是的,代码在xp上工作!
答案 0 :(得分:2)
如果必须在同一个线程上运行所有内容,可以使用:
Application.DoEvents();
这相当于VB.NET中的“DoEvents”。希望有所帮助...