2012-07-29 78 views
0

我有一個非常簡單的應用程序。它獲取滑塊值並將其顯示在文本框中。接口和實現情況如下: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 

的UI:

enter image description here

問題: 應用崩潰,當我移動滑塊。

+0

什麼indexOfTickMarkAtPoint回來?它聽起來像一個int? – bigkm 2012-07-29 11:52:00

回答

1

indexOfTickMarkAtPoint返回NSInteger,但setStringValue:想(顯然)一個字符串。查看NSString方法stringWithFormat:的文檔以獲取如何執行轉換的說明。

喜歡的東西:

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

我只是試圖,我得到的錯誤「實例方法 - indexoftickmarkpointpoint找不到(返回類型默認爲id)」 – 2012-07-29 12:08:09

+0

也許我輸入它的名稱錯了......?無論如何,你已經在調用'Sc'的方法。 – 2012-07-29 12:12:05

1

發生的請告訴我是它的一個NSInteger,而不是一個指向對象

[Tf setIntegerValue:[Sc indexOfTickMarkAtPoint]]; 
相關問題