【发布时间】:2012-01-26 19:51:03
【问题描述】:
我正在尝试制作一个简单的 Cocoa 应用程序,其中将数字输入到文本字段中。当一个数字输入到一个文本字段中时,另一个文本字段将自动更新为另一个数字(反之亦然)。我拖入窗口的文本字段是来自界面生成器的“带有数字格式化程序的文本字段”。我将文本字段设置为委托,允许它们自动更新。但是,格式似乎不起作用。我无法输入十进制数字。请帮忙!!!
头文件在这里:
#import <Cocoa/Cocoa.h>
@interface AppDelegate : NSObject <NSApplicationDelegate> {
IBOutlet NSTextField *number1;
IBOutlet NSTextField *number2;
}
@property (assign) IBOutlet NSWindow *window;
@end
这里的实现文件:
#import "AppDelegate.h"
@implementation AppDelegate
@synthesize window = _window;
-(void)controlTextDidChange:(NSNotification *) note {
NSTextField *changedField = [note object];
if (changedField == number1) {
float num1 = [number1 floatValue];
[number2 setFloatValue: (num1*2.0)];
}
if (changedField == number2) {
float num2 = [number2 floatValue];
[number1 setFloatValue: (num2/2.0)];
}
}
@end
【问题讨论】:
标签: objective-c cocoa interface-builder nstextfield