我是一名全新的Mac程序员,我需要有关如何使用NSProgressIndicator
的帮助。我已经查找了示例代码,但找不到任何帮助。
我想做的是:
-(IBAction)startProgressBar:(id)sender; {
//I want to make the bar update itself by the value of 1 until it is at the value of 100
//Example: add 1 to bar every second until it is full
}
答案 0 :(得分:8)
我认为performSelector:withObject:afterDelay
会帮助你。
编写一个可以增加进度条的方法。在该方法结束时,在同一方法上调用performSelector:withObject:afterDelay
,延迟为1秒,直到条形图满为止。
您可能不需要将对象传递给该方法,因此您只需使用nil。
修改强>
在你的情况下,我会推荐这样的东西:
- (IBAction)startProgressBar:(id)sender
{
// Initialize the progress bar to go from 0 to 100
[progress setMinValue:0.0];
[progress setMaxValue:100.0];
[progress setDoubleValue:0.0];
// Start the auto-increment calls
[self incrementProgressBar];
}
- (void)incrementProgressBar
{
// Increment the progress bar value by 1
[progress incrementBy:1.0];
// If the progress bar hasn't reached 100 yet, then wait a second and call again
if([progress doubleValue] < 100.0)
[self performSelector:@selector(incrementProgressBar) withObject:nil afterDelay:1];
}