endSheet:returnCode:
シートウインドウを指定して、文書モーダルセッションを終わります
-(void)endSheet:(NSWindow *)sheet: returnCode:(NSInteger)returnCode:
解説
シートウインドウを指定して、文書モーダルセッションを終わります。リターンコード(NSInteger)をデリゲートオブジェクトに渡します。
返り値
( void )
なし
引数
( NSWindow * )sheet
シートウインドウ
( NSInteger )returnCode
リターンコード
フレームワーク
ApplicationKit
クラス
NSApplication
Instance Methods
使用可能
10.0
参照
- beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:
- endSheet:
例文
#import "MyObject.h" @implementation MyObject - (IBAction)myAction:(id)sender { [NSApp beginSheet:sheetWindow modalForWindow :[sender window] modalDelegate :self didEndSelector :@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo :nil ]; } - (IBAction)closeSheet:(id)sender { NSLog(@"closeSheet"); //OKボタンはtagを1にしてある(NSOKButton=1) //Cancelボタンはtagを0にしてある(NSCancelButton=0) //両方のボタンをこのメソッドに接続しておいて... [NSApp endSheet:sheetWindow returnCode:[sender tag]]; [sheetWindow close]; } - (void)sheetDidEnd:(NSWindow*)sheet returnCode:(NSInteger)returnCode contextInfo:(void*)contextInfo { //ここでどのボタンが押されたかを見分ける //そうするとボタン増やしてもメソッド増やさなくてOK switch (returnCode) { case NSOKButton: NSLog(@"OK Button Pressed",returnCode); break; case NSCancelButton: NSLog(@"Cancel Button Pressed",returnCode); break; default: break; } } @end