我很好奇在NSAlert方法中将常量传递给完成处理程序
- (void)beginSheetModalForWindow:(NSWindow *)sheetWindow completionHandler:(void (^)(NSModalResponse returnCode))handler
它是一个像NSModalResponseStop = -1000或NSModalResponseAbort = -1001的数字吗? 如果警报中有多个按钮,我怎么知道按下了什么按钮?
答案 0 :(得分:1)
按钮返回值与beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:
相同。可能的值列在"按钮返回值"在NSAlert documentation:
按钮的警报返回值取决于位置。以下常量描述警报上前三个按钮的返回值(假设从左到右读取的语言)。
enum {
NSAlertFirstButtonReturn = 1000,
NSAlertSecondButtonReturn = 1001,
NSAlertThirdButtonReturn = 1002
};