cocoa - NSTableView保证数据显示

标签 cocoa process nstableview

我的应用程序的主 GUI 有一个 NSTableView,由它自己的 Controller 类控制。此类通过启动和解析进程的输出将数据加载到表中一次。这是在

中完成的
-(void)awakeFromNib

Controller 类的方法。该表在启动时立即显示,因此这意味着在显示 GUI 之前,应该完成进程输出的解析。

现在的问题是,当显示 GUI 时(我的应用程序启动很慢,这意味着进程已启动),表有时是空的,有时会加载数据。这是随机的。 那么如何让表在启动时始终加载数据?

reloadData 不起作用!我还使用 [NSTask waitUntilExit];

最佳答案

这就是我经常在窗口显示之前使应用程序“完全加载”的方式:

在 Interface Builder 中取消选中窗口的“启动时可见”。然后在 AppDelegate 中创建一个 IBOutlet NSWindow *window;。最后,在您的 AppDelegate 中,实现 applicationDidFinishLaunching: 方法并将 [window makeKeyAndOrderFront:self]; 添加到该方法中。

这应该可行,因为 applicationDidFinishLaunching: 将始终在 awakeFromNib 之后调用。

关于cocoa - NSTableView保证数据显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7050153/

相关文章:

macos - 如何向 NSTableCellView 添加子类?

objective-c - ConnectionKit 应用程序无法在其他计算机上打开

php - 异步子进程中的 Symfony2 命令

objective-c - iOS 7 碰撞发生后添加 UIGravityBehavior 和 UIPushBehavior

r - 如何从 CONDOR 获取队列号到你的 R 作业中

process - 优先老化作为进程调度策略。有哪些优点和缺点?

swift - NSTableView:第二列在不应该出现的时候出现

macos - NSTableView 中的悬停效果问题

objective-c - 如何在 nsMenuItem Cocoa Mac osx 中对齐文本中心

cocoa - IMKit 捕获 NSKeyup 事件