2014-01-09 77 views
2

我試圖在mac應用程序的視圖中顯示NSWindowController類作爲模式表。
問題是默認的模態來自上下滑動。將窗口顯示爲模式

SettingWindowController *obj=[[SettingWindowController alloc]  initWithWindowNibName:@"SettingWindowController"]; 
    [NSApp beginSheet:obj.window 
    modalForWindow:[self.view window] 
    modalDelegate: self 
    didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) 
     contextInfo: nil]; 

當我執行上面的代碼時,它只是在視圖外打開第二個窗口控制器。

我怎樣才能得到它是視圖的默認行爲來從上向下滑動。

+2

在推出」可見確實是我的問題了。 –

+1

是'任何機會obj.window'零? – Jay

回答

1
-(IBAction)showModel:(id)sender { 
    obj=[[SettingWindowController alloc] initWithWindowNibName:@"SettingWindowController"]; obj.delegate=self; [NSApp beginSheet:obj.window modalForWindow:[self.view window] 
    modalDelegate: self didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) 
     contextInfo: nil]; } 



- (void)didEndSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo 
    { 
[obj.window orderOut:self]; 
    } 
-(void)showModelEnd 
{ 
[NSApp endSheet:obj.window]; 

} 
0
-(IBAction)showModel:(id)sender 
{ 
    obj=[[SettingWindowController alloc] initWithWindowNibName:@"SettingWindowController"]; 
obj.delegate=self; 
[NSApp beginSheet:obj.window 
    modalForWindow:[self.view window] 
    modalDelegate: self 
    didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) 
     contextInfo: nil]; 
    } 
- (void)didEndSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo 
    { 
[obj.window orderOut:self]; 
} 
-(void)showModelEnd 
{ 
[NSApp endSheet:obj.window]; 

}