Miro el codigo de la clase CBmpButton de la libreria estandar MQL5 y veo la similitud. ¿Es un accidente o una de estas clases sirvió como prototipo?
Sí, por supuesto - CBmpButton se tomó como base. Y 90 por ciento reelaborado :) La clase padre CWndObj tuvo que ser ligeramente modificada usando herencia. Esto se hizo por compatibilidad con la librería estándar.
Por cierto, sería bueno obtener una descripción completa de sus métodos, porque hay que meterse en el código y leer los métodos, adivinando para qué se necesitan.....
Antes de hacer una descripción, por favor, dime qué método cambia la posición de un objeto gráfico en el gráfico. El método Top(aLocation) de la clase CWnd no lo cambia. Pero cambia la ubicación del clic como debe ser, pero el objeto gráfico en sí permanece en su sitio. ¿Entiendo que no hay vinculación entre la etiqueta del objeto y el objeto en sí? O no entiendo algo...
En general, lo he solucionado, en la clase CBmpButtonTransparent, he abierto el objeto m_button y a través de su método Y_Distance, al igual que en Top, introduzco una nueva coordenada Y. Ahora todo funciona.
Antes de hacer una descripción, por favor, dime qué método cambia la posición de un objeto gráfico en el gráfico. El método Top(aLocation) de la clase CWnd no lo cambia. Pero cambia la ubicación del clic como debe ser, pero el objeto gráfico en sí permanece en su sitio. ¿Entiendo que no hay vinculación entre la etiqueta del objeto y el objeto en sí? O no entiendo algo...
En general, lo he solucionado, en la clase CBmpButtonTransparent, he abierto el objeto m_button y a través de su método Y_Distance, igual que en Top, introduzco una nueva coordenada Y. Ahora todo funciona.
No - esa no es la forma de hacerlo. Buscaré un ejemplo y lo subiré. Yo mismo experimenté con ello durante el concurso :)
Es que el método move no pertenece a mi clase - está implementado en la librería estándar.
Pon la carpeta con todo su contenido en Expertos.
En el archivo Profit_button, mira las líneas 139-143 y 155-159.
//Money.Shift(0,-3); //Button.Shift(x,0); Money.Move(Money.Left(),Money.Top()-3); Button.Move(Button.Left()+x,Button.Top());
Funciona de ambas maneras - dependiendo del propósito.
Antes de iniciar el Asesor Experto, expanda la ventana a la pantalla completa :)
No, no hagas eso. Buscaré un ejemplo y lo subiré. Durante el concurso yo mismo experimenté con él :)
Es que el método move no pertenece a mi clase, está implementado en la librería estándar.
Pon la carpeta con todo su contenido en Expertos.
En el archivo Profit_button, vea las líneas 139-143 y 155-159.
Funciona de ambas maneras - dependiendo del propósito.
Antes de iniciar el Asesor Experto, expanda la ventana a la pantalla completa :)
Expanda la ventana a pantalla completa antes de lanzar el Asesor Experto :)
¡Gran ejemplo!
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Clase СBmpButtonTransparent:
Clase de botón transparente.
Clase y ejemplos de su uso, desarrollados para el concurso, organizado por TheXpert.
Autor: Andrey Miguzov