Прошло пять лет с тех пор, как этот вопрос был задан, но я просто решил, как это сделать, и решил, что поделюсь своими результатами.
В дополнение к добавлению ключей @houbysoft, упомянутых в Info.plist, также необходимо было вручную добавить пункт меню в меню справки, которое вызывало средство просмотра справки.
Пример кода (при инициализации окна QMainWindow):
QMenu *helpMenu = new QMenu("Help", menuBar());
helpMenu->addAction(tr("&XYZ Help..."), this, SLOT(showHelp()));
(илиВы можете добавить пункт меню другим способом, возможно, используя Designer.)
Метод showHelp ():
void openHelp()
{
CFBundleRef appBundle = CFBundleGetMainBundle();
if (appBundle == NULL) {
return;
}
CFStringRef myBookName = (CFStringRef)CFBundleGetValueForInfoDictionaryKey(appBundle, CFSTR("CFBundleHelpBookName"));
if (!myBookName || CFGetTypeID(myBookName) != CFStringGetTypeID()) {
return;
}
AHLookupAnchor(myBookName, CFSTR("Start"));
}
Обратите внимание, что на первой странице я добавил якорь с именем «Пуск»моей документации.Замените "Start"
именем вашего собственного якоря.