<Convert.h>
#import <Cocoa/Cocoa.h>
@interface Converter : NSObject {
float sourceCurrencyAmount;
float rate; // sourceCurrencyAmount, rate 라는 object를 선언해주었습니다.
창 상에서는 Exchange rate per 1$, Dollars to Convert를 뜻하게 됩니다.
}
@property(readwrite) float sourceCurrencyAmount, rate;
- (float)convertCurrency; // return되는 반환값(즉 결과값)을 object로 선언해주었습니다.
창에서는 Amount in other Corrency를 뜻하게 됩니다.
@end
<Convert.m>
#import "Converter.h"
@implementation Converter
@synthesize sourceCurrencyAmount, rate;
- (float)convertCurrency {
return self.sourceCurrencyAmount * self.rate; // 입력되는 sourceCurrencyAmount, rate 값을 곱한 결과값을
return 한다는 뜻입니다.
}
@end
<ConverterController.h>
#import <Cocoa/Cocoa.h>
#import "Converter.h"
@interface ConverterController : NSObject { // IBOutlet은 결과
IBOutlet NSTextField *amountField; // "sourceCurrencyAmount" object를 뜻하는 창입니다.
IBOutlet NSTextField *dollarField; // " rate" object를 뜻하는 창입니다.
IBOutlet NSTextField *rateField; // 결과값
Converter *converter;
}
- (IBAction)convert:(id )sender;
@end
<ConverterController.m>
@implementation ConverterController
- (IBAction)convert:(id)sender {
float amount;
converter = [[Converter alloc]init]; // Converter Object를 초기화합니다.
[converter setSourceCurrencyAmount:[dollarField floatValue]]; // dollarField, rateField 값을 세팅합니다.
[converter setRate:[rateField floatValue]];
amount = [converter convertCurrency]; // convertCurrency값을 포인터 converter를 통하여 가져온 후
amount에 저장합니다.
[amountField setFloatValue:amount]; // amountField에 amount값을 저장합니다.
[rateField selectText:self]; // rateField에 point가 설정되어 다시 값을 넣어줄수 있게 설정됩니다.
}
@end
참고문서 :