Usando HTML HELP em suas aplicações
Visual Basic
Vamos ver como criar um Help usando arquivos HTML e integrá-los
com suas aplicações em Visual Basic de forma clara e objetiva.
Se você não tem idéia de como vai ser a cara do seu
HELP dê uma olha no HELP do Internet Explorer 4.0 , gostou ?? Pois
bem, o seu vair ser igual...
O que você vai precisar para começar:
-
Você vair precisar criar todos os seus arquivos HTML , para isto
pode usar o FrontPage ou o Bloco de Notas.(gozação...)
-
Você também vai precisar da ferramenta que irá trabalhar
estes arquivos e gerar o arquivo de HELP para você , esta ferramenta
será o HTML Help Workshop da microsoft , e você pode pegá-la
de graça no endereço: www.microsoft.com/workshop/author/htmlhelp/default.asp
-
Você vai precisar de alguém que lhe dê umas dicas.(aqui
entro eu...)
Bem contando que tudo já esta pronto , os arquivos HTM e o HTML
Help WorkShop instalado, podemos começar.
Eu vou mostrar como criar o HELP usando como exemplo o HELP do Controle
Financeiro Pessoal . Assim crie um diretório para guardar os
seus arquivos HTML e os arquivos do HTML HELP que serão gerados
mais tarde.
Para você ter um idéia os tipos de arquivos usados no HTML
HELP são:
Extensão do Arquivo |
Tipo do Arquivo |
HHP |
Projeto do HELP |
HHC |
Tabela de conteúdo |
HHK |
Indice |
CHM |
Help Compilado |
HTM |
Os arquivos HTM |
H |
Arquivo de Cabeçalho. |
Eu criei um diretório chamado financa no drive C: C:\FINANCA
e nele eu guardei todos os arquivos HTM que eu vou usar.
 |
Arquivos Htm usados para montar o HTML HELP |
Agora inicie o HTML Help Workshop e escolha File|New , na
janela de diálogo a seguir selecione a opção Project
e clique OK. (Veja tela abaixo)
O Wizard para novo projeto é iniciado, agora você segue
os seguintes passos para as próximas telas do Wizard:
Tela 1 - Clique em avançar.
Tela 2 - Informe o nome do diretório e o nome do seu projeto.
Eu usei financa\financa.
Tela 3 - Como você já criou os seus arquivos selecione
a opção HTML files(.htm)
Tela 4 - Clique no botão ADD e no diretório
onde estão os seus arquivos HTML , selecione todos e clique em Abrir.
Todos os seus arquivos deverão ser incluidos na janela, como abaixo:
Tela 5 - Clique em concluir e o Wizard será encerrado , voltando
para a janela do seu projeto , agora já em andamento.(Ver abaixo)
A seguir clique na aba Contents, Selecione a opção
Create a New Contents File e clique em OK .
Informe a seguir o nome da tabela de conteúdo, Eu usei o nome
Conteudo.(Veja abaixo).Clique em Salvar.
A janela de Conteúdo surge aberta , e agora você pode
usar os botões Insert Heading e Insert Page para inserir os seus
arquivos HTM criados anteriormente.
Clique no botão para inserir um página , no quadro
a seguir informe o nome que quer dar a página , clique no botão
ADD e selecione o arquivo htm que você incluiu no projeto que esteja
relacionado com este assunto.
Clique no botão OK e repita o processo para cada assunto do
seu HELP , relacionando a seus arquivos HTML criados. De forma que no final
devemos ter algo como a figura abaixo:
A seguir clique na aba Index e selecione a opção Create
a New Index File e a seguir no botão OK, salvando o arquivo com
o nome de indice (eu usei este nome).
A Janela de indice é aberta e nela você pode inserir as
palavras chaves e relacioná-las com seus arquivos HTM criados de
, como mostrado abaixo:
Repita a operação para cada palavra chave que você
quiser incluir e relacionando-a com seus arquivos HTM criados de forma
que no final você deverá ter algo como:
Clique na aba Project novamente e vamos definir a aparência
da nossa janela de HELP. Clique no ícone : Add/Modify Windows Definitions
e informe o nome de sua janela , eu usei meuhelp, a seguir configure-a
a vontade, veja as opções na tela abaixo:
Agora vamos configurar o HTML Help para podermos usar Help sensível
ao contexto, para isso clique no ícone: HTML Help API Information
, a aba MAP e aberta e você deve incluir o nome do arquivo
de cabeçalho. Este arquivo você deve criar com um editor DOS
ou com o bloco de notas , ele tem a extensão H, eu usei o nome financa.h
, o seu contéudo deve relacionar um número a cada arquivo
HTM que você criou assim no nosso caso obtivemos algo como:
A seguir clique na aba ALIAS e relacione cada arquivo usado
no arquivo de cabeçalho com o seu arquivo HTM , veja abaixo:
Ao terminar voltaremos a janela de projeto do sistema para finalmente
compilar nosso HTML HELP clicando no ícone : Save All Files e
Compile
Durante a compilação temos na janela a direita a informação
do status e dos erros que ocorrem. Dando tudo certo teremos no final a
tela como abaixo:
E pronto , nosso Help já esta gerado , com o nome de financa.chm
, e preparado para ser usado. Agora falta ajustar o código no Visual
Basic para utilizar o HTML Help , para isto usaremos uma chamada a API
e criaremos uma classe para tirar melhor proveito.
A API para usar mostrar os arquivos gerados faz parte do controle
hhctrl.ocx , criaremos então uma classe com a HTMLHelp API no
projeto para realizar a tarefa.
Crie uma classe é de um nome a ela, eu a chamei de vbhelp, a
seguir entre com o seguinte código na seçao General Declarations:
'declarações e rotinas usadas pela classe vbhelp
Option Explicit
'// Constant declarations
Private Const HH_DISPLAY_TOPIC = &H0
Private Const HH_HELP_CONTEXT = &HF
'// API declaration
Private Declare Function HtmlHelp Lib "hhctrl.ocx" Alias "HtmlHelpA"
_
(ByVal hwndCaller As Long, ByVal pszFile As String, _
ByVal uCommand As Long, ByVal dwData As Long) As Long |
A classe que usaremos possui um método - o método Show
- criaremos o código para o método . ver abaixo
Public Sub Show(NewFile As String, Optional WindowPane As String, Optional
ContextID)
Dim strfile As String
strfile = NewFile
If Len(WindowPane) Then
strfile = Trim(strfile) & ">" & Trim(WindowPane)
End If
If IsMissing(ContextID) Then
Call HtmlHelp(0, strfile, HH_DISPLAY_TOPIC, ByVal 0&)
Else
Call HtmlHelp(0, strfile, HH_HELP_CONTEXT, ContextID)
End If
End Sub |
No método podemos ver que o primeiro argumento , NewFile,
é o nome do arquivo que pode ser arquivos HTM ou o arquivo
compilado com Microsoft HTMLHelp Workshop com extensão CHM.
O segundo argumento, Windowpane, é opcional e as definições
da janela que usamos ao gerar o Help compilado. O terceiro argumento ,
ContextID , também opcional , fornece a identificação
a ser usada para o Help sensível ao contexto.
Vejamos agora como usar a classe para chamar o HELP criado:
Para chamar o help de sua aplicação , você pode
usar o código abaixo em um botão de comando. Ele faz uma
chamada ao método Show da classe que criamos:
Dim strfile As String
Dim objHelp As vbhelp
Set objHelp = New vbhelp
strfile = "c:\financa\financa.chm"
Call objHelp.Show(strfile, "meuhelp")
Set objHelp = Nothing |
Se quiser usar Help sensível ao contexto vai precisar referenciar
a identificação do módulo que deseja chamar, assim
para chamar o Help do módulo cadastro devemos fazer assim:
'chama help do contexto
Dim strfile As String
Dim objHelp As vbhelp
Set objHelp = New vbhelp
strfile = pathelp
Call objHelp.Show(strfile, "meuhelp", 10003) 'O número 10003
está relacionado com o arquivo cadastro.htm
Set objHelp = Nothing |
Espero que o HTML HELP aqui descrito te ajude !!
referência:
Integrating HTML Help into your applications, PRAMODA, Sant S.
, Visual Basic On-Line, 1999
retorna