标签:
如果要弹出一个自定义的window,可以创建一个新的window xib文件,并通过NSBundle来加载。xib的window属性有一个选项,就是visible at lauch,如果勾选的,执行下面代码时: [NSBundle loadNibNamed: @"RegisterWindow" owner: self]; [NSApp beginSheet: sheet modalForWindow: window modalDelegate: self didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) contextInfo: nil]; 上面代码,自定义的窗口无法附在父窗口上;如果要让刚加载的窗口附在父窗口上,必须取消勾选visible at lauch选项。
// NSRect rect = NSMakeRect(20, 20, 200, 200); // NSUInteger windowStyle = NSResizableWindowMask; // NSWindow *window = [[NSWindow alloc] initWithContentRect:rect styleMask:windowStyle backing:NSBackingStoreBuffered defer:NO]; // // [NSApp beginSheet:edit.window // modalForWindow:[NSApp mainWindow] // modalDelegate:nil // didEndSelector:nil // contextInfo:nil]; // [NSApp runModalForWindow: window]; // // [NSApp endSheet:window]; // [window orderOut:self];
标签:
原文地址:http://www.cnblogs.com/ZhangYuGe/p/4422031.html