Я хотел бы отобразить вкладку указателя с указанным ключевым словом и отображением первой записи.
Следующий код отображает только вкладку указателя с ключевым словом в поле поиска, но не отображает первую запись из списка.
::HtmlHelp (::GetDesktopWindow (), m_MyChmFile, HH_DISPLAY_INDEX, (DWORD_PTR) "MyKeyword");
С помощью HH_ALINK_LOOKUP
будет делать то, что я хочу, но файл CHM должен быть скорректирован с ключевыми словами (ссылками), которые вы хотите найти.
Я хотел бы иметь общий поиск по индексу с первой выбранной записью. Это возможно?
Я не программист на C ++ — больше работаю над созданием справки и другими языками программирования, например Visual Basic (.net).
Тем не менее, я обновил свой пример подключения к C ++ CHM и попытался использовать его для VS 2008.
Это работает для меня. Запись «Цветы» отображается внизу списка, но пользователь должен щелкнуть «Показать» (на немецком языке: Anzeigen ») для получения содержимого темы. В случае, показанном на снимке, две темы имеют ключевое слово« цветы ».
http://www.help-info.de/en/Help_Info_HTMLHelp/hh_api.htm имеет немного больше информации об API HTMLHelp.
Код четырех кнопок (см. Также оснастку):
private: System::Void btnHelp_Click(System::Object^ sender, System::EventArgs^ e) {
System::Windows::Forms::Help::ShowHelp(this, helpProvider1->HelpNamespace);
}
private: System::Void btnShowIndex_Click(System::Object^ sender, System::EventArgs^ e) {
System::Windows::Forms::Help::ShowHelpIndex(this, helpProvider1->HelpNamespace);
}
private: System::Void btnShowIndexKeyword_Click(System::Object^ sender, System::EventArgs^ e) {
System::Windows::Forms::Help::ShowHelp(this, helpProvider1->HelpNamespace, System::Windows::Forms::HelpNavigator::Index, L"Flowers");
}
private: System::Void btnShowSearchTab_Click_1(System::Object^ sender, System::EventArgs^ e) {
System::Windows::Forms::Help::ShowHelp(this, helpProvider1->HelpNamespace, System::Windows::Forms::HelpNavigator::Find, L"Garden");
}