Características del lenguaje mql4, sutilezas y técnicas - página 16
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Espero que sean amigos)
"Guerra de Titanes" no va a suceder.
¿Hay alguna manera de saber directamente desde el programa qué fuente está actualmente en las ventanas (ampliada o no) y hacer esta corrección en el código, sin tocar a los usuarios? Solo que algunas personas pueden tener un monitor 4k con texto escalado y la mayoría de los indicadores (donde se usa el texto) del mercado se ven feos y desagradables.
Espero que el hilo no esté muerto. Tengo el siguiente problema: Tengo un monitor 4k, por lo tanto en Windows tengo una fuente ampliada (tamaño 200%). Cuando haces objetos de texto para los indicadores, el tamaño del texto se toma de la configuración de Windows y también se escala, como resultado, si haces algo que parece normal en un sistema normal, en mi ordenador el texto se superpone, y si lo haces normal para mí, entonces en la configuración normal el texto es demasiado pequeño. He hecho un ajuste en el indicador para que el usuario pueda elegir si se escala o no, pero no me gusta mucho.
¿Hay alguna manera de saber directamente desde el programa qué fuente está actualmente en las ventanas (ampliada o no) y hacer esta corrección en el código, sin tocar a los usuarios? Algunas personas pueden tener un monitor 4k con texto escalado y la mayoría de los indicadores (donde se utiliza el texto) del mercado se ve feo.
¿Tal vez deberías cambiar a trabajar con recursos, o con CCanvas?
A continuación, puede ajustar el tamaño de la fuente de acuerdo con la configuración del sistema operativo.
Lea sobre TextOut(), TextSetFont()
Ya está, la solución está encontrada. Para los que se preguntan qué es: Utilice la función TerminalInfoInteger(TERMINAL_SCREEN_DPI); con el escalado estándar será 96. Si es 2 veces más grande, entonces la escala será 2 veces en consecuencia.
La solución está en la ayuda
Ejemplo de cálculo del factor de escala:
//--- creamos un botón con ancho 1.5" en la pantalla
int screen_dpi =TerminalInfoInteger(TERMINAL_SCREEN_DPI);//--- get DPI of user monitor
int base_width =144;//ancho base en puntos de pantalla para monitores estándar con DPI=96
int width = (button_width *screen_dpi) / 96;//calcular el ancho del botón para el monitor del usuario (con DPI)
...
//--- calcular el factor de escala en porcentajes
int scale_factor=(TerminalInfoInteger(TERMINAL_SCREEN_DPI)* 100) / 96;
//--- usando elfactor de escala
width=(base_width * scale_factor) / 100;
La solución está en la ayuda
Sí, pero no es para las fuentes.
Ya está, la solución está encontrada.
¿de verdad? ¿el escalado afecta a los ppp del monitor?
Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading
Peculiaridades del lenguaje mql5, consejos y trucos
fxsaber, 2019.02.19 22:28
Se ve que la posición se abrió y se cerró al mismo precio. Pero sus precios no son iguales cuando se comparan sin normalización.