terminate:
アプリケーションを終了します
-(void)terminate:(id)sender:
解説
アプリケーションを終了します。まずapplicationShouldTerminate:を呼び出してアプリケーションが終了することをデリゲートに通知します。NOが返されると終了しません。YESが返されるとデフォルトの通知センターにNSApplicationWillTerminateNotificationをポストします。
返り値
( void )
なし
引数
( id )sender
送信オブジェクト
フレームワーク
ApplicationKit
クラス
NSApplication
Instance Methods
使用可能
10.0
参照
- run
- stop:
例文
#import "Controller.h" @implementation Controller - (IBAction)pushButton:(id)sender { [info setStringValue:@"終了処理を終えてから約10秒後に終了します"]; [NSApp terminate:sender]; } NSTimer *timer=nil; - (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)theApplication { NSLog(@"applicationShouldTerminate"); NSDate *theDate = [NSDate dateWithTimeIntervalSinceNow:10]; //10秒後にタイマー起動 //userInfoに使う辞書を作成 NSDictionary *userInfoDictionary =[NSDictionary dictionaryWithObjectsAndKeys: @"value1",@"key1", @"終了",@"key2", @"value3",@"key3",nil]; //タイマー作成 timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target: self selector: @selector(timerControl:) userInfo: userInfoDictionary repeats:NO]; //起動時間セット [timer setFireDate:theDate]; [[NSRunLoop currentRunLoop] addTimer:timer forMode:NSModalPanelRunLoopMode]; return NSTerminateLater; } //2分以内に -(void) timerControl:(NSTimer *)aTimer { NSLog(@"...%@",[[aTimer userInfo] objectForKey:@"key2"]); //NSLog([[timer fireDate] description]); [NSApp replyToApplicationShouldTerminate:YES]; } @end