我是 Cocoa 和 XCode 的新手,我想得到你的帮助。我制作了 XIB 窗口的控制器,并启动了我的窗口,我有一个我希望我的控制器需要的参数,你设置了参数,但是当我单击一个按钮并且我需要恢复参数时,该值是 nill 或空的。
例如...
我有
#import <Cocoa/Cocoa.h>
#import "ITKExample1Filter.h"
#import "Helper.h"
@interface VentanaGraficaController1 : NSWindowController {
ViewerController* _viewerController;
IBOutlet NSComboBox *combo;
IBOutlet NSTextField *windowLevelTextField;
IBOutlet NSTextField *windowWidhTextField;
NSString *cad_;
}
@property NSString *cad;
@property ViewerController* viewerController;
//Metodos
- (IBAction) converToRGB: (id)sender;
- (IBAction) initAux: (id)sender;
- (void) initController : (ViewerController*) vc: (int) n;
@end
@implementation VentanaGraficaController1
//Parametros que sintetizaremos para manejar los valores por referencia
@synthesize viewerController = _viewerController;
@synthesize cad = cad_;
// .....
- (IBAction) converToRGB: (id)sender {
NSAlert *a = [NSAlert alertWithMessageText:cad_
defaultButton:@"OK"
alternateButton:@"Cancel"
otherButton:nil
informativeTextWithFormat:@"Cadena por syntetise"];
[a runModal];
}
// ..... The rest
我使用我的控制器如下:
VentanaGraficaController1 *controller = [[VentanaGraficaController1 alloc] initWithWindowNibName:@"VentanaGraficaController1"];
[controller setViewerController:viewerController];
[controller setViewerController:(viewerController)];
[controller setCad:@"works??"];
controller.viewerController = viewerController;
controller.cad = @"works??";
[controller showWindow:nil];
当我显示 NSSAlert 时,它总是将我显示cad_
为空白或空字符串,我尝试了很多方法,但我不知道为什么我失去了价值。