Je fais un court projet juste pour expérimenter l'écriture sans l'utilisation des fichiers nib (seul intérêt personnel, ne comptez pas sur ne jamais utiliser grué!).
J'ai mon contrôleur d'application mis en place en tant que délégué de NSApp. Sous - (void) applicationDidFinishLaunching: (NSNotification *) aNotification, je tente d'initialiser l'interface.
AppController.h:
#import <Cocoa/Cocoa.h>
#import <QTKit/QTKit.h>
@interface AppController : NSObject {
NSWindow* mainWindow;
QTMovieView* movieView;
QTCaptureSession* mainSession;
QTCaptureMovieFileOutput* output;
QTCaptureDeviceInput* video;
QTCaptureDeviceInput* audio;
}
+ (void)initialize;
- (id)init;
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification;
@end
Méthode de la AppController.m
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
//Proceed to initialize the entire interface:
mainWindow = [[NSWindow alloc] initWithContentRect:NSMakeRect(500, 300, 700, 500)
styleMask:(NSTitledWindowMask|NSClosableWindowMask|
NSMiniaturizableWindowMask|NSResizableWindowMask)
backing:NSBackingStoreBuffered
defer:NO];
[mainWindow setTitle:@Record a movie!];
/*movieView = [[QTMovieView alloc] initWithFrame:NSMakeRect([[mainWindow contentView] bounds].origin.x + 5,
[[mainWindow contentView] bounds].origin.y + 30,
[[mainWindow contentView] bounds].size.width - 10,
[[mainWindow contentView] bounds].size.height - 35)];*/
[[mainWindow contentView] addSubview:movieView];
[mainWindow makeKeyAndOrderFront:NSApp];
}
La partie commentée est à l'origine de l'erreur 1 qui ne figure pas dans l'éditeur de texte, uniquement dans le panneau « build »:
<pre> .objc_class_name_QTMovieView, referenced from:
literal-pointer@_OBJC@_cls_refs@QTMovieView in AppController.o
symbol(s) not found
collect2: Id returned 1 exit status
Il semble y avoir un problème avec alloc / une instance ici s'être initialisé. Je peux déclarer un nouveau bien, à savoir QTMovieView * test; et rien ne se plaint. Je l'ai aussi trouvé qu'il fait la même chose avec toutes les autres classes QT lorsque je tente de alloc / init eux. Cependant, j'ai pu alloc / init NSWindow très bien. Le cadre est dans mon projet et que vous pouvez voir dans mon .h, je compris QTKit.
Tout le monde sait ce qui se passe?













