3

我一直在尝试使用新的 NSProgress 类来报告我的 Mac 应用程序中的操作进度。现在,它已作为属性保存在我的 App Delegate 中(并从不同的类和不同的队列更新),并且似乎已正确更新,如 logging 所证明的那样[_currentProgress fractionCompleted]

但是,当我尝试使用 NSProgress 对象更新进度条时,我的问题就出现了。我已经用这样的绑定设置了进度条:

绑定截图

进度条似乎停留在我的空占位符上(通过将空占位符更改为“1”来证明),而不是重新绘制或更新以适应任何进一步的进展。currentProgress仅在操作开始后设置,这就是为什么进度条一开始使用 null 占位符的原因,但是当 NSProgress 对象设置为该属性时,它不会努力更新进度条。

如果有人可以在这里帮助我,那就太好了……(一定是我做错了什么愚蠢的事情!)

4

2 回答 2

1

除非您另有说明,否则我将假设您使用的是不确定的进度条。

Cocoa NSProgressIndicator 可以是不确定的,在这种情况下,它是一种理发店风格的漩涡,它要么移动,要么不移动:

不定进度条的图片

或者,它们可以是确定的,在这种情况下,它是典型的从左到右擦除进度条:

确定进度条的图片

尝试取消选中不确定并查看您的进度是否使用以下设置显示:

进度条设置面板

于 2014-04-28T04:27:53.940 回答
0

fractionCompleted我认为问题在于,如果使用的 NSProgress 正在后台队列上更新,则不能使用绑定。我现在正在自己实现这个组合,我没有像你这样通过普通绑定出现一个栏。如果我希望 KVO 观察它并设置条形图的 doubleValue ,它就可以工作......只要我将它分派到主队列中。

于 2015-12-07T15:38:04.453 回答