我在更改按钮颜色方面遇到问题(在vb.net中)。我搜索过网络,很多人都愿意告诉我如何改变颜色,但我的问题是 - 它没有。我说它没有,它完成了它完成Sub中的其余代码。任何人都可以向我提供一个解释,请问为什么在我问的时候不会发生这种情况?我正在使用Visual Studio 2008
答案 0 :(得分:1)
更改颜色调用后,Application.DoEvents()
这为GUI提供了更新的机会。
答案 1 :(得分:1)
Application.DoEvents可以工作,但这是错误的解决方案。
正确的解决方案与你不想等待sub结束的原因有关:你的方法中有一些长时间运行的代码,并且该方法直接响应UI事件。在这种情况下,右解决方案是使用BackgroundWorker组件来执行长时间运行的代码,因此该方法将立即完成,按钮可以在应该的时候改变颜色。