|
22/11/2008
Experto
|
Capítulo 23: Crear Ayuda gráfica
Puede agregar un toque profesional a su aplicación al incluir un archivo de Ayuda gráfico en forma de Ayuda HTML o Ayuda WinHelp. La Ayuda gráfica puede incluir gráficos y texto con formato; la Ayuda de tipo dbf está limitada a una sola fuente sin gráficos. Para obtener información acerca de la creación de Ayuda de tipo .DBF, vea el capítulo 24, Crear Ayuda de tipo .DBF.
Nota Microsoft Visual Studio 6.0 incluye el Microsoft HTML Workshop (Hhw.exe) para crear archivos de Ayuda HTML. No incluye Microsoft Help Workshop 4.0 (Hcw.exe) para crear archivos Winhelp. Las versiones anteriores de Microsoft Visual FoxPro incluían Microsoft Help Workshop 4.0.
Los temas descritos en este capítulo son:
Ayuda HTML
WinHelp 4.0
Ayuda HTML
La Ayuda HTML proporciona muchas de las características de Winhelp y agrega las siguientes:
Soporte para HTML.
Soporte para ActiveX, Java y secuencias de comandos (Javascript y Microsoft Visual Basic Script).
Soporte para los formatos de imagen de HTML (.jpg, .gif, .png).
Capacidad para ir desde un tema de Ayuda a un sitio de Internet.
Capacidad para ver el código HTML de un tema de Ayuda.
La Ayuda HTML se crea con Microsoft HTML Help Workshop, que se incluye en Visual Studio y en Visual FoxPro. HTML Help Workshop proporciona un completo sistema de creación de Ayuda HTML e incluye una compatibilidad con versiones anteriores que le permite crear fácilmente archivos de Ayuda HTML a partir de proyectos Winhelp existentes. Para crear archivos de Ayuda HTML en su aplicación, consulte la Ayuda en pantalla de HTML Help Workshop.
En …\Samples\Vfp98\Solution\Help se incluye un proyecto de Ayuda HTML de ejemplo, parte del ejemplo Solutions. Incluye los siguientes archivos:
Archivo Descripción
Solution.chm Archivo de Ayuda compilado.
Solution.hhp Archivo de proyecto (un archivo de texto que reúne todos los elementos de un proyecto de Ayuda y contiene información acerca de cómo va a aparecer un archivo de Ayuda compilado).
Solution.hhk Archivo de índice; contiene las entradas del índice (palabras clave).
Solution.hhc Archivo de Tabla de contenido.
Solution.ali Archivo de alias para el soporte de Ayuda interactiva. Asocia Id. de producto con temas de Ayuda.
Solution.hh Archivo de encabezados para el soporte de Ayuda interactiva. Incluye los Id. de producto.
Solution.chi Archivo de índice utilizado cuando se suministran archivos .chm que van a permanecer en un CD-ROM, como en el caso de la biblioteca MSDN. El archivo .chi permite la instalación local de cierta información de exploración en el disco duro que permite tener acceso de forma rápida, mientras que el contenido principal reside en el CD-ROM. Los archivos .chi no se usan en entornos sin CD-ROM. Cuando no se utilizan archivos .chi, toda la información que podría almacenar permanece en el propio archivo .chm.
MSDN_ie3.css Hoja con el estilo de cascada.
MSDN_ie4.css Hoja con el estilo de cascada.
Archivo.htm Archivos de contenido.
Archivo.gif Archivos gráficos.
Diseñar el acceso a la Ayuda HTML
Además de crear un archivo de Ayuda HTML que contenga información útil, tiene que proporcionar un medio para que los usuarios de su aplicación tengan acceso a dicha Ayuda. Hay tres maneras de proporcionar Ayuda:
Un menú Ayuda (un menú que aparece en la barra del menú principal de su aplicación).
Ayuda interactiva (Ayuda que aparece cuando el usuario presiona F1, u otra tecla especificada, mientras está seleccionado un objeto, control o opción de menú determinado).
Ayuda "¿Qué es esto?" (Ayuda que aparece cuando el usuario pide Ayuda sobre un objeto o control determinado).
La implementación de la Ayuda HTML es similar a la de WinHelp. Las siguientes secciones describen cómo puede implementar la Ayuda HTML en sus aplicaciones.
Diseñar el menú Ayuda
El menú Ayuda suele contener comandos que proporcionan acceso a los temas de su sistema de Ayuda. Se recomienda que sólo un comando del menú Ayuda abra su sistema de Ayuda HTML. Además de dicho comando, puede incluir otros comandos en el menú Ayuda para proporcionar información del sistema o la información de derechos de autor y la versión de su aplicación.
Interactividad
La Ayuda interactiva permite que los usuarios tengan acceso a los temas de Ayuda relacionados con lo que estén haciendo o viendo en su aplicación en cualquier momento dado. Por ejemplo, si un usuario está viendo un formulario de introducción de datos, la Ayuda interactiva podría proporcionar un tema relacionado específicamente con dicho formulario.
Usted decide el nivel de detalle de la implementación de la Ayuda interactiva en su aplicación. Por ejemplo, puede asociar un tema de Ayuda interactiva con un formulario o puede asociar temas de Ayuda más detallados para cada uno de los controles y campos del formulario.
Se suele llegar a la Ayuda interactiva al presionar F1, pero puede especificar que se active mediante cualquier tecla con ON KEY LABEL.
Usar la Ayuda interactiva en un formulario
Para implementar Ayuda interactiva, tiene que especificar el archivo de Ayuda de su aplicación y después asociar temas de Ayuda determinados con objetos de su aplicación.
Para agregar Ayuda interactiva
Especifique el archivo de Ayuda de su aplicación.
Asigne un tema de Ayuda a cada objeto para el que vaya a proporcionar Ayuda interactiva.
Especificar el archivo de Ayuda
El archivo de Ayuda al que se tiene acceso en su aplicación se determina al incluir el comando SET HELP TO archivo en el código, donde archivo es el nombre del archivo de Ayuda. Por ejemplo, si el archivo de Ayuda es MiAyuda.chm, puede utilizar el siguiente comando:
SET HELP TO MIAYUDA.CHM
Este comando suele estar incluido en el código de configuración del programa principal de su aplicación.
Asignar temas de Ayuda
Puede asignar un tema de Ayuda a objetos específicos de su aplicación de Visual FoxPro.
Para asignar un tema de Ayuda a un objeto
En modo Diseño, abra el objeto (por ejemplo, un formulario, un control o una barra de herramientas) al que vaya a asignar Ayuda interactiva.
Vea las propiedades del objeto.
Establezca la propiedad HelpContextID al número correspondiente al tema asociado de su archivo de Ayuda HTML.
Para obtener más información acerca de la asociación de temas de Ayuda HTML con Id. de contexto, consulte la Ayuda de HTML Help Workshop.
Nota Para asignar temas de Ayuda a títulos de menú o a comandos de menú, tiene que incluir el comando SET TOPIC TO en el procedimiento asociado con el título de menú o el comando de menú.
Implementar la Ayuda "¿Qué es esto?"
La Ayuda "¿Qué es esto?" es similar a la Ayuda interactiva puesto que proporciona Ayuda relacionada con el objeto o control específico que actualmente tiene el enfoque.
En WinHelp, en lugar de invocar el archivo de Ayuda y mostrar el tema de Ayuda en la ventana de Ayuda con su tamaño predeterminado, la Ayuda "¿Qué es esto?" presenta el tema en una pequeña ventana emergente que desaparece en cuanto el usuario hace clic en cualquier parte de la pantalla. La Ayuda "¿Qué es esto?" es útil para proporcionar breves descripciones, definiciones o sugerencias sobre controles específicos.
Al contrario que en WinHelp, la Ayuda HTML "¿Qué es esto?" se presenta en la ventana de Ayuda con su tamaño predeterminado.
La Ayuda "¿Qué es esto?" se asocia con un formulario, control de formulario o barra de herramientas particular estableciendo su propiedad WhatsThisHelpID al número correspondiente al tema asociado de su archivo de Ayuda.
Para implementar la Ayuda "¿Qué es esto?", utilice las siguientes propiedades y métodos:
Propiedad Descripción
WhatsThisHelp Establezca esta propiedad a True (.T.) en un formulario para activar la Ayuda "¿Qué es esto?" en el formulario y en los controles del formulario.
WhatsThisButton Establezca esta propiedad a True (.T.) si quiere que aparezca un botón "¿Qué es esto?" en la barra de título del formulario.
WhatsThisHelpID En un formulario, control o barra de herramientas, establezca esta propiedad al ID correspondiente al tema asociado de su archivo de Ayuda HTML.
WhatsThisMode Utilice este método para mostrar el puntero con la interrogación para la Ayuda "¿Qué es esto?" y activar dicho modo de Ayuda. Al hacer clic en un objeto se muestra el tema de Ayuda "¿Qué es esto?" especificado por la propiedad WhatsThisHelpID del objeto.
Para implementar la Ayuda "¿Qué es esto?"
En modo Diseño, abra el formulario en el que vaya a activar la Ayuda "¿Qué es esto?".
Establezca la propiedad WhatsThisHelp del formulario a True (.T.).
Para mostrar un botón "¿Qué es esto?" en la barra de título del formulario, establezca la propiedad WhatsThisButton del formulario a True (.T.).
Para asociar un tema de Ayuda "¿Qué es esto?" al formulario, establezca la propiedad WhatsThisHelpID del formulario al Id. correspondiente al tema asociado de su archivo de Ayuda HTML.
Para asociar un tema de Ayuda "¿Qué es esto?" con un control concreto del formulario, seleccione el control y establezca su propiedad WhatsThisHelpID al Id. correspondiente al tema asociado de su archivo de Ayuda HTML.
Programar las funciones de Ayuda
Puede programar su aplicación para que los usuarios tengan acceso a su sistema de Ayuda HTML. Aunque un sistema de Ayuda HTML puede consistir en uno o varios archivos separados, la Ayuda aparece ante los usuarios como parte integrante de su aplicación.
Puede programar su aplicación de Visual FoxPro para utilizar Ayuda gráfica y Ayuda de tipo .dbf con los comandos SET HELP TO y SET TOPIC TO. SET HELP TO especifica el nombre de un archivo de Ayuda personalizado para su aplicación. SET TOPIC TO establece la palabra clave identificativa de un tema del archivo de Ayuda personalizado.
Reservar F1
Cuando un usuario presiona F1 dentro de su aplicación, Visual FoxPro puede mostrar un tema de Ayuda interactiva. Para hacerlo así, asigne un Id. de contexto con un tema de su tabla de Ayuda y asigne el mismo valor a la propiedad HelpContextID del formulario o el control. Cuando el formulario o el control tengan el enfoque y el usuario presione F1, Visual FoxPro muestra el tema asociado.
Nota De forma predeterminada, F1 está activada para la Ayuda interactiva. Como es un estándar admitido para la Ayuda, no se recomienda la modificación de esta tecla.
Incluir botones de Ayuda en los formularios
Si agrega botones de Ayuda a sus formularios, los usuarios pueden tener acceso a la Ayuda con más facilidad. Especialmente, debe considerar la inclusión de un botón de Ayuda si sus usuarios no son muy experimentados.
Para establecer la sensibilidad al contexto y agregar un botón de Ayuda
En el evento Init de su formulario, establezca la propiedad HelpContextID de todos los objetos del formulario al mismo valor, correspondiente a un tema de Ayuda. Por ejemplo, si dicho valor es 7, podría utilizar el siguiente comando:
THIS.SetAll("HelpContextID", 7)
Agregue un botón de comando al formulario.
Establezca la propiedad Caption del botón de comando a "Ayuda".
En el evento Click del botón de comando, agregue el siguiente comando:
HELP ID THIS.HelpContextID
Sugerencia Guarde el botón de Ayuda como una clase de forma que pueda incluirlo fácilmente en cualquier otro formulario. Para obtener más información acerca de cómo guardar objetos como clases, vea el capítulo 9, Crear formularios.
Distribuir un sistema de Ayuda HTML compilado
Además del archivo .chm que se crea para el sistema de Ayuda HTML, puede utilizar un programa de instalación de uso y distribución gratuita, Hhupd.exe, que instala y registra los componentes de ejecución de la Ayuda HTML mostrados a continuación. El Explorador de Internet o el motor de ejecución del Explorador de Internet tienen que estar instalados en los equipos de los usuarios.
Componente Descripción
Hhctrl.ocx Control ActiveX de la Ayuda HTML
Itss.dll Biblioteca de vínculos dinámicos que controla el HTML compilado
Itircl.dll Biblioteca de vínculos dinámicos para búsquedas de texto
Hh.exe Visor de Ayuda HTML
Este programa de instalación se encuentra en la carpeta Redist de la carpeta de instalación del Taller de Ayuda HTML. Puede llamar a dicho programa de instalación desde otros programas de instalación y ejecutarlo en modo 'silencioso' para que no interfiera con el programa de instalación que haya creado. Para obtener la lista completa de las opciones de línea de comandos, ejecute Hhupd.exe/?.
WinHelp 4.0
Utilice Microsoft Help Workshop, proporcionado en las versiones anteriores de Visual FoxPro, para crear archivos Winhelp. Microsoft Help Workshop incluye una Guía de diseño de Ayudas. La Guía de diseño de Ayudas (Hcw.hlp) es un archivo de Ayuda gráfica que contiene gran parte de la información necesaria para diseñar sistemas de Ayuda robustos.
Elegir las funciones de Ayuda
Los sistemas WinHelp puede tener algunas o todas las funciones siguientes:
Una página de contenido que proporciona una vista jerárquica de los temas del sistema de Ayuda.
Un índice, basado en las palabras clave que usted proporcione, que guía al usuario hasta una información específica.
Funciones de búsqueda de texto que permiten que los usuarios busquen palabras o frases en la Ayuda.
Texto con varias fuentes, tamaños de fuente y colores.
Gráficos, incluyendo mapas de bits con varias resoluciones.
Macros que automatizan o amplían la operación del sistema de Ayuda.
Zonas activas (áreas sensibles al mouse que se crean para proporcionar a los usuarios saltos que vinculan temas; ventanas emergentes que muestran texto adicional; y macros incluidas en el sistema de Ayuda).
Hipergráficos segmentados: gráficos con una o varias zonas activas.
Ventanas secundarias.
Menús personalizables.
Gráficos en formato metarchivo de Windows.
.DLLs.
Diseñar el acceso a la Ayuda en pantalla
Además de crear un archivo WinHelp que contenga la información necesaria, tiene que proporcionar los medios a través de los cuales los usuarios de su aplicación van a tener acceso a la Ayuda. Hay tres maneras de proporcionar Ayuda:
Un menú Ayuda (un menú que aparece en la barra del menú principal de su aplicación).
Ayuda interactiva (Ayuda que aparece cuando el usuario presiona F1, u otra tecla especificada, mientras está seleccionado un objeto, control u opción de un menú determinado).
Ayuda "¿Qué es esto?" (Ayuda que aparece como sugerencia emergente cuando el usuario pide Ayuda sobre un objeto o control específico).
Diseñar el menú Ayuda
El menú Ayuda suele contener comandos que proporcionan acceso a los temas de su sistema de Ayuda. WinHelp 4.0 incorpora la ventana Buscador de Ayuda, que es un único cuadro de diálogo que proporciona acceso al contenido, al índice y a la búsqueda de texto.
|