- Funciones para obtener las propiedades básicas del gráfico actual
- Identificación de gráficos
- Obtener la lista de gráficos
- Obtener el símbolo y el marco temporal de un gráfico arbitrario
- Visión general de funciones para trabajar con el conjunto completo de propiedades
- Propiedades descriptivas de los gráficos
- Comprobar el estado de la ventana principal
- Obtener el número y la visibilidad de las ventanas/subventanas
- Modos de visualización de gráficos
- Gestionar la visibilidad de los elementos del gráfico
- Desplazamientos horizontales
- Escala horizontal (por tiempo)
- Escala vertical (por precio y lecturas del indicador)
- Colores
- Control del ratón y del teclado
- Desacoplar la ventana del gráfico
- Obtener las coordenadas de caída del programa MQL en un gráfico
- Conversión de coordenadas de pantalla a tiempo/precio y viceversa
- Desplazamiento de gráficos por el eje temporal
- Solicitud para volver a dibujar el gráfico
- Cambiar símbolo y marco temporal
- Gestionar indicadores en el gráfico
- Abrir y cerrar gráficos
- Trabajar con plantillas de gráficos tpl
- Guardar la imagen de un gráfico
Control del ratón y del teclado
En esta sección nos familiarizaremos con un grupo de propiedades que afectan a la forma en que el gráfico capturará ciertas manipulaciones del ratón y del teclado, que se consideran por defecto acciones de control. En concreto, los usuarios de MetaTrader 5 saben muy bien que el gráfico se puede desplazar con el ratón, y que se puede llamar al menú contextual para ejecutar los comandos más solicitados. MQL5 permite desactivar total o parcialmente este comportamiento del gráfico. Es importante señalar que esto sólo puede hacerse mediante programación: no hay opciones similares en la interfaz de usuario del terminal.
La única excepción es la opción CHART_DRAG_TRADE_LEVELS (véase en la tabla siguiente): la configuración del terminal proporciona la pestaña Charts con una lista desplegable que controla el permiso para arrastrar niveles de trading con el ratón.
Todas las propiedades de este grupo son de tipo booleano (true para permitido y false para deshabilitado) y están en la enumeración ENUM_CHART_PROPERTY_INTEGER.
Identificador |
Descripción |
|---|---|
CHART_CONTEXT_MENU |
Activar/desactivar el acceso al menú contextual pulsando el botón derecho del ratón. El valor false desactiva sólo el menú contextual del gráfico, mientras que el menú contextual de los objetos del gráfico sigue estando disponible. El valor por defecto es true. |
CHART_CROSSHAIR_TOOL |
Activar/desactivar el acceso a la herramienta Crosshair pulsando el botón central del ratón. El valor por defecto es true. |
CHART_MOUSE_SCROLL |
Desplazamiento del gráfico con el botón izquierdo o la rueda del ratón. Cuando el desplazamiento está activado, esto se aplica no sólo al desplazamiento horizontal, sino también al vertical, pero este último sólo está disponible cuando se establece una escala fija: una de las propiedades CHART_SCALEFIX, CHART_SCALEFIX_11 o CHART_SCALE_PT_PER_BAR. El valor por defecto es true. |
CHART_KEYBOARD_CONTROL |
Posibilidad de manejar el gráfico desde el teclado (botones Home, End, PageUp/PageDown, +/-, flechas arriba/abajo, etc.). Si se configura en false, se puede desactivar el desplazamiento y la escala del gráfico, pero al mismo tiempo es posible recibir eventos de pulsación de estas teclas en OnChartEvent. El valor por defecto es true. |
CHART_QUICK_NAVIGATION |
Activación de la barra de navegación rápida en el gráfico, que aparece automáticamente en la esquina izquierda de la línea de tiempo al hacer doble clic con el ratón o pulsar las teclas Space o Input. Con la barra, puede cambiar rápidamente el símbolo, el marco temporal o la fecha de la primera barra visible. Por defecto, la propiedad está establecida en true y la navegación rápida está activada. |
CHART_DRAG_TRADE_LEVELS |
Permiso para arrastrar niveles de trading en el gráfico con el ratón. El modo de arrastre está activado por defecto (true). |
En el script de prueba ChartInputControl.mq5, configuraremos el monitor con todas las propiedades anteriores y, además, proporcionaremos variables de entrada para que el usuario configure arbitrariamente los valores. Nuestro script guarda una copia de seguridad de la configuración al iniciarse, por lo que todas las propiedades modificadas se restaurarán cuando finalice el script.
#property script_show_inputs
|
Por ejemplo, cuando ejecutamos el script, podemos restablecer los permisos para el menú contextual, la herramienta Crosshair, el ratón y los controles de teclado a false. El resultado está en el siguiente registro:
Initial state:
|
En este caso, no podrá mover el gráfico ni con el ratón ni con el teclado, ni siquiera llamar al menú contextual. Por lo tanto, para restaurar su rendimiento, tendrá que soltar el mismo script u otro en el gráfico (recuerde que sólo puede haber un script en el gráfico, y cuando se aplica uno nuevo, el anterior se descarga). Basta con soltar una nueva instancia del script, pero no ejecutarlo (pulse Cancel en el cuadro de diálogo para introducir variables de entrada).