0

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

#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

用户界面:

在此处输入图像描述

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

4

2 回答 2

1

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

就像是:

[Tf setStringValue:[NSString stringWithFormat:@"%d", [Sc indexOfTickMarkAtPoint]]];
于 2012-07-29T11:54:13.500 回答
1

发生的事情是它是一个 NSInteger 而不是指向对象的指针

[Tf setIntegerValue:[Sc indexOfTickMarkAtPoint]];
于 2012-07-29T11:54:35.730 回答