|
|
|
|
- Presentación
- Implementación
- Incluyendo los archivos de la interfaz C# de WINDEV
- Carga de la biblioteca WINDEV (WDL)
- Ejecutar códigos WINDEV desde el idioma externo
- 1. Llamar a un código de WLanguage
- 2. Recuperación de los eventos lanzados en las ventanas WINDEV
- Finalización de la aplicación
Lenguaje externo: Programación en C#
Vamos a llamar a los elementos desarrollados en WINDEV (proyecto, ventanas, análisis,...) desde el lenguaje C#. Recordatorio: C# es un lenguaje de la plataforma.NET. El código del lenguaje WLanguage usado desde el lenguaje externo será compilado dinámicamente y ejecutado durante su llamada. Este modo se ilustra en el proyecto "City.cs" (formato C#), disponible en el subdirectorio "External Languages\ES\C#" del directorio de instalación de WINDEV. Observaciones: - C# no le permite usar el motor HFSQL. Para manipular el motor HFSQL, realice los procesos necesarios en WINDEV.
- Compatible con las versiones 4.2 y 6.0 y posteriores de Visual C++..
Incluyendo los archivos de la interfaz C# de WINDEV El siguiente archivo debe encontrarse en el directorio de ejecución de su programa C# para poder llamar a la interfaz C# de WINDEV: - WINDEV.CS
- wdxxxle.dll
- wdXXXICS.DLL
Los métodos de la clase WINDEV deben ser llamados y precedidos por " WinDev ": WINDEV.CALLWD("LIBRA,Disk,city.wdl"); Carga de la biblioteca WINDEV (WDL) La librería WINDEV (.WDL) contiene todos los elementos del proyecto (ventanas, informes, clases, consultas, análisis, ...). Por lo tanto, debe ser cargado en la memoria para que sus componentes puedan ser llamados. Atención: Si las ventanas deben cargarse fuera de la biblioteca, el código de cada una de estas ventanas debe incluirse en el archivo ".WDW" correspondiente ("Incluir el código compilado" debe estar marcado en la pestaña "Detalles" del description de cada ventana). // Opening the library // if WDInt is not null, the library was not found! WINDEV.CALLWD("LIBRA,Disk,city.wdl"); if (WINDEV.WDInt() == 0) { ... } else { // Library not found WINDEV.CALLWD("Error, Library not found"); } // Terminate... WINDEV.WDEnd(); Ejecutar códigos WINDEV desde el idioma externo 1. Llamar a un código de WLanguage Todas las funciones WLanguage se pueden llamar desde el idioma externo. El comportamiento de estas funciones WLanguage, así como los valores devueltos, son idénticos tanto si se llaman: - de WINDEV o
- desde la interfaz del lenguaje externo
Para conocer los parámetros y los valores de retorno de una función WLanguage, consulte la ayuda en línea o la documentación sobre WLanguage. Puede utilizar LLAMADA para llamar a un Procedure WLanguage desde la interfaz externa. Por ejemplo: // Open the first window of the program that contains the menu WINDEV.CALLWD("OPEN,menufc.wdw"); 2. Recuperación de los eventos lanzados en las ventanas WINDEV La entrada en las ventanas WINDEV requiere recuperar los eventos desencadenados en estas ventanas. Para recuperar los eventos del usuario (clic en un menú, en un botón, etc.), debe implementar un sistema basado en un bucle en su programa C#. Este bucle permanecerá Active mientras se abra la ventana WINDEV y se utilizará para interceptar cada acción del usuario. Para conocer el tipo de acción realizada por el usuario, tiene la posibilidad de utilizar una cadena de caracteres Variable (en WLanguage) denominada 'WDKey '. Esta Variable se usará en su código WLanguage para señalar al programa C# el botón que fue presionado por ejemplo. Ejemplo: Código C // Open the first window of the program that contains the menu WINDEV.CALLWD("OPEN,menufc.wdw"); // the program loops until the File Exit option // is selected while (bInput) { // perform the input of the menu WINDEV.CALLWD("Screen,Input"); // the status report WDKey is set to *M* when a menu choice //was selected string szOption = WINDEV.WDKey(); if (szOption = "*M*") { ... } } WINDEV.APPELWD("FERME"); Código para interceptar la selección de "Archivo..Salir" de la ventana "Menú" de WINDEV: // cancelation if (WINDEV.WDKey() == "FE") { bInput = false; } Cuando el usuario selecciona "Archivo..Salir": - WDKey devolverá "*M*".
- WDString devolverá las letras de acceso directo en el orden en que se seleccionan los menús. En nuestro ejemplo, WDString devuelve "FE".
Finalización de la aplicación Para finalizar el uso de la interfaz externa, escriba las siguientes líneas de código: // Terminate... WINDEV.WDEnd();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|