Trabajar con ventanas personalizadas en cTrader Algo
En este artÃculo y su video correspondiente, hablaremos sobre cómo trabajar con ventanas personalizadas al crear algoritmos de cTrader. Explicaremos qué son las ventanas personalizadas y cómo se pueden usar en sus cBots e indicadores. También crearemos un ejemplo de uso de una ventana personalizada en un cBot.
Ejemplo de ventana personalizada
Ahora cambiaremos a la aplicación Algo para ver una ilustración de cómo se pueden usar las ventanas personalizadas en sus cBots e indicadores. Crearemos un nuevo indicador; en él, simplemente usaremos un ejemplo ya preparado de la documentación.
Copie y pegue el código de la documentación en la ventana del editor de código. Luego, compile el indicador y agregue una instancia del mismo a un gráfico.
Tan pronto como se agregue el indicador, deberÃamos ver una ventana personalizada emergente. Esta ventana contiene un formulario complejo que muestra información sobre el sÃmbolo al que está adjunto actualmente el gráfico del indicador. Este formulario es un gran ejemplo de lo que se puede lograr con ventanas personalizadas.
Ventanas personalizadas vs. WPF y WinForms
Hay un par de razones por las que usar ventanas personalizadas es mejor que usar WPF o WinForms. Las ventanas personalizadas de cTrader ya vienen con un estilo nativo que coincide con la apariencia de cTrader. Las ventanas WinForms y WPF requieren un manejo especial y habilidades de programación avanzadas ya que se ejecutan en diferentes hilos. Tales problemas se evitan completamente cuando se utilizan las ventanas personalizadas de cTrader.
Crear una ventana personalizada
Ahora demostraremos cómo puede crear una ventana personalizada desde cero. Crearemos un nuevo indicador y lo llamaremos "Ejemplo de Ventana Personalizada". En este ejemplo, agregaremos una ventana personalizada y luego agregaremos algunos controles personalizados a ella. La ventana en sà se declarará en el método Initialize(); para mostrar la ventana, llamaremos al método window.Show().
1 2 3 4 5 6 7 8 9 10 11 | |
Para ver la ventana, podemos compilar el indicador y agregarlo a un gráfico.
Agregar controles a una ventana
Ahora agregaremos controles personalizados a la ventana. Estos controles tomarán la forma de un cuadro de texto que contiene algún texto.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Reconstruiremos el indicador y agregaremos una nueva instancia para ver cómo se ven nuestros controles personalizados.
Modificar las propiedades de la ventana
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
Una vez más reconstruiremos nuestro indicador y agregaremos una instancia. Ahora nuestra área de ventana es un rectángulo con un ancho y alto de 800 pÃxeles.
El siguiente cambio será agregar un rango en el que se pueda redimensionar la ventana. Para hacerlo, agregaremos los parámetros MinHeight, MaxHeight, MinWidth y MaxWidth.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
Reconstruiremos el indicador y, después de añadir una instancia, podemos intentar probar su tamaño. El cambio de tamaño solo es posible dentro del rango de ancho y alto especificado.
También podemos cambiar el color de fondo de una ventana y hacerla no redimensionable.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
Después de realizar las acciones habituales (reconstruir el indicador y añadir una instancia), la ventana deberÃa tener un nuevo color de fondo.
Resumen
Las ventanas personalizadas de cTrader son flexibles y se pueden personalizar en gran medida. Además de las propiedades mencionadas anteriormente, también puede cambiar los márgenes y el relleno, la visibilidad de las ventanas personalizadas y si están activas bajo ciertas condiciones. Las ventanas personalizadas de cTrader también exponen métodos para mostrarlas, ocultarlas y cerrarlas, además de varios otros manejadores de eventos.