我正在开发一个程序,该程序需要我从另一个线程(而不是创建此 GUI 的主线程)更新我的 windows 窗体 GUI。我尝试使用:
rMainGUI->textBox3->Text = "TestDLL Try";
rMainGUI->textBox3->Update();
但是程序只是卡在了第一行。如果我删除第一行,它会在运行时给我一个错误,说:
"Cross-thread operation not valid: Control 'textBox3' accessed from a thread other than the thread it was created on."
我想知道是否有一些简单的、线程安全的、UI 更新功能可以用来更新 GUI 而不会弄乱这些线程?或者,如果有一些命令我可以用来暂停当前线程,转到主线程,更新 GUI,然后返回当前线程?
我对 C++ 有一般的了解,对线程有一点了解。任何帮助将非常感激。