NSAlert:beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:
Home 目次>ApplicationKit>NSAlert
10.3

beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:

シートでアラートパネルを表示します。


-(void) beginSheetModalForWindow:(NSWindow *)window
   modalDelegate:(id)delegate
   didEndSelector:(SEL)didEndSelector
   contextInfo:(void *)contextInfo


【返り値】
   voidなし
【パラメータ】
   window
   delegateデリゲート
   didEndSelectorシート終了時に実行するメソッド
   contextInfo追加情報


【解説】

シートでアラートパネルを表示します。
パネルの終了時のために- (void)alertDidEnd:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo;
{}
というメソッドを使います。
returnCodeに押されたボタンの番号が戻されてきますのでそのコードをもとに分岐処理します。追加情報はcontextInfoを使って渡します。
【returnCode】
-1 その他のボタン
0 キャンセルボタン
1 デフォルトボタン



【例文】


#import "MyObject.h"

@implementation MyObject

- (
IBAction )myAction:( id )sender
{
NSAlert *alert = [NSAlert alertWithMessageText:
@"alertWithMessageText"
defaultButton:
@"defaultButton"
alternateButton:
@"alternateButton"
otherButton:
@"otherButton"
informativeTextWithFormat:
@"informativeTextWithFormat %@" , @"text"
];

[alert beginSheetModalForWindow:[sender window]
modalDelegate:
self
didEndSelector:
@selector ((alertDidEnd:returnCode:contextInfo:)
contextInfo:
nil
];

}
- (
void )alertDidEnd:(NSAlert *)alert returnCode:( int )returnCode contextInfo:( void *)contextInfo;

{
NSLog(
@"%d" ,returnCode);

[
self replyToShouldUnselect: YES ];
}

@end


(C) 2000-2007 Satoshi Oomori.
[Apple]

Google
Webwww.oomori.com
Apple_Store_40x120

[ad:Usual day in Japan]

この記事を評価してください。 

良い 

間違いがある 説明がわかりにくい 例文がわかりにくい  

Home 目次>ApplicationKit>NSAlert
修正日2007.5.28