Objective-C获取滑块值并将其显示在文本框中

时间:2012-07-29 11:45:04

标签: objective-c

我有一个非常简单的应用程序。它获取滑块值并将其显示在文本框中。界面和实现如下:

#import <Foundation/Foundation.h>

@interface HelloWorld : NSObject
@property (assign) IBOutlet NSTextField *Tf;
@property (assign) IBOutlet NSSliderCell *Sc;

@end


#import "HelloWorld.h"

@implementation HelloWorld
@synthesize Tf;
@synthesize Sc;
- (IBAction)Pressed:(id)sender {
    [Tf setStringValue:@"Hey"];
}
- (IBAction)Scroll:(id)sender {
    [Tf setStringValue: [Sc indexOfTickMarkAtPoint]];
}

@end

用户界面:

enter image description here

问题: 移动滑块时应用程序崩溃。

2 个答案:

答案 0 :(得分:1)

indexOfTickMarkAtPoint返回NSInteger但setStringValue:想要(有点明显)一个字符串。查看NSString方法stringWithFormat:的文档,了解如何进行转换。

类似的东西:

[Tf setStringValue:[NSString stringWithFormat:@"%d", [Sc indexOfTickMarkAtPoint]]];

答案 1 :(得分:1)

发生的事情是它的NSInteger而不是指向Object的指针

[Tf setIntegerValue:[Sc indexOfTickMarkAtPoint]];