我正在使用 Cocoa 作为图形界面为 OS X 制作一个应用程序。但我的主要算法是用C++编写的。该界面仅显示 NSTextFields 和 NSLevelIndicator 中算法的一些值。
屏幕需要实时刷新算法的数据。
我所做的是一个 NSThread,它从算法中读取数据并将其显示在屏幕上。但我认为这不是正确的方法。
您有什么建议?
最佳答案
通常,您应该只从主线程更新 GUI。您可以使用如下代码向主线程提交一些工作:
dispatch_async(dispatch_get_main_queue(), ^{
[myTextField setStringValue:@"a new string"];
});
关于c++ - 使用 Cocoa 和 C++ 时刷新屏幕上数据的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10940446/