Usando FindVCLWindow para chamar WinHelp32 (WinXP Pro SP3 32bit) em Delphi
o que está errado aí?
procedure TForm1.VCLHelpClick(Sender: TObject);
var Ctrl : TWinControl;
begin
Ctrl := FindVCLWindow(Mouse.CursorPos);
if Ctrl <> nil then
if Form2.Cursor = crHelp then begin
if Ctrl = CreatorEdit then Application.HelpCommand(HELP_CONTEXT,001);
if Ctrl = EditorEdit then Application.HelpCommand(HELP_CONTEXT,002);
if Ctrl = UpdaterEdit then Application.HelpCommand(HELP_CONTEXT,003);
if Ctrl = IdeaEdit then Application.HelpCommand(HELP_CONTEXT,004);
if Ctrl = PorterEdit then Application.HelpCommand(HELP_CONTEXT,005);
end;
end;
A idéia é simples - eu tenho ícones de borda de formulário para o botão Ajuda e quando clico nele, os cursores são alterados para crHelp. Se eu clicar sob o controle para qualquer IF, ele chama o sistema de ajuda e abre o arquivo de ajuda associado ao contexto do comando. Mas isso não funciona ... Isso é porque eu não adicionei suporte para o KLink / ELinks no próprio arquivo de ajuda?
Para ajudar na criação e no desenvolvimento, estou usando o ShalomHelpMaker Software.