Отображение предупредительной справки
Класс NSAlert включает несколько методов, позволяющих Вам вывести на экран справочную информацию, связанную с предупредительным диалоговым окном или листом. Можно или использовать объект NSHelpManager приложения найти и вывести на экран информацию с помощью приложения Средства просмотра Справки, или можно обеспечить собственные средние значения для отображения справочной информации.
Предупредительное диалоговое окно или лист распространяются, та справка доступна с круглой кнопкой вопросительного знака. Вы запрашиваете дисплей этой кнопки путем отправки setShowsHelp:
к NSAlert возражают с параметром YES
. Для фактического отображения справки у Вас есть две опции:
Укажите привязку к справке, которую объект NSHelpManager может использовать, чтобы найти, что текст справки выводит на экран в Средстве просмотра Справки.
Укажите привязку к справке путем вызова NSAlert’s
setHelpAnchor:
метод.Установите делегата к NSAlert, возражают и реализуют метод делегата
alertShowHelp:
. Делегат ответственен за отображение справочной информации, связанной с предупреждением.
Перечисление 1 показывает, как Вы могли бы инициализировать объект NSAlert для второй опции справки.
Перечисление 1 , Устанавливающее кнопку справки и делегата к предупредительному диалоговому окну
NSAlert *alert = [[NSAlert alloc] init]; |
// other initializations here ... |
[alert setShowsHelp:YES]; |
[alert setDelegate:self]; |
Перечисление 2 иллюстрирует реализацию NSAlert alertShowHelp:
метод делегата.
Перечисление 2 Реализовывая метод делегата для отображения предупредительной справки
- (BOOL)alertShowHelp:(NSAlert *)alert { |
NSString *path = [[NSBundle mainBundle] pathForResource:@"Help" ofType:@"html"]; |
BOOL flag = [[NSWorkspace sharedWorkspace] openFile:path]; |
return flag; |
} |
Если Ваше приложение имеет больше чем одно предупредительное диалоговое окно или лист, для которого это выводит на экран справку, это должно протестировать объект NSAlert, переданный в этот метод для определения текста справки для отображения. Всегда возвращайтесь YES
если не успешно выполнялся дисплей справки.