Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 366

 
msl271170:

Gracias, creo que lo tengo.

¿Y cómo se ejecuta el depurador en los datos históricos?


Feliz de ayudar.

La depuración sólo es posible en el historial en MT5.

 
Aleksey Vyazmikin:

Feliz de ayudar.

La depuración sólo es posible en el historial en MT5.


Tengo entendido que MT5 tiene un lenguaje de programación diferente. ¿Mi código no funcionará allí?

 
msl271170:

Tengo entendido que MT5 tiene un lenguaje de programación diferente. ¿Mi código no funcionará allí?

Nadie ha visto su código. Por eso es difícil decirlo. Pero los idiomas son casi los mismos.
 

Adjuntamos un panel basado en el ejemplo de SB. He limpiado el código para dejar sólo lo relevante a la pregunta, se adjunta el código fuente.



¿Puedes decirme cómo colorear la cabecera y la zona principal, en la que enganchamos los elementos?
Parece que estos objetos están en la clase padre Dialog,

private:
   //--- dependent controls
   CPanel            m_white_border;        // the "white border" object
   CPanel            m_background;          // the background object
   CEdit             m_caption;             // the window title object
   CBmpButton        m_button_close;        // the "Close" button object
   CWndClient        m_client_area;         // the client area object

Y tienen los métodos correspondientes


Pero, ¿cómo puedo llegar a los campos privados correctamente?

Archivos adjuntos:
 
Vasiliy Pushkaryov:

Adjuntamos un panel basado en el ejemplo de SB. He limpiado el código para dejar sólo lo relevante a la pregunta, se adjunta el código fuente.



¿Puedes decirme cómo colorear la cabecera y la zona principal, en la que enganchamos los elementos?
Parece que estos objetos están en la clase padre Dialog,

Y tienen los métodos correspondientes


Pero, ¿cómo puedo llegar a los campos privados correctamente?

Tiene una lista de métodos para acceder a estos campos en la imagen. ¿Los métodos son públicos?
 
Artyom Trishkin:
Tiene una lista de métodos para acceder a estos campos en la imagen. ¿Los métodos son públicos?

No. Lo escribí en CDialog en el constructor, lo capturé y luego lo volví a poner

 
Artyom Trishkin:
Tiene una lista de métodos de acceso a estos campos en la imagen. ¿Los métodos son públicos?

Hay un método público CDialog::CreateCaption(), CreateClientArea(). Los paneles se crean allí y sus colores se establecen a través de CONTROLS_DIALOG_COLOR_BG y CONTROLS_DIALOG_COLOR_CLIENT_BG.

He intentado anular estas variables en mi clase a través de undef y definirlas de nuevo. Y luego ejecuta los métodos Create... de nuevo, pero como los objetos ya han sido creados se devuelve un error 4200 - el objeto ya existe.

Añadido:

El error 4200 es cuando lo comprobé en MT4.

 
Vasiliy Pushkaryov:

Hay un método público CDialog::CreateCaption(), CreateClientArea(). Los paneles se crean allí y sus colores se establecen a través de CONTROLS_DIALOG_COLOR_BG y CONTROLS_DIALOG_COLOR_CLIENT_BG.

He intentado anular estas variables en mi clase a través de undef y definirlas de nuevo. Y luego ejecuta los métodos Create... de nuevo, pero como los objetos ya han sido creados se devuelve un error 4200 - el objeto ya existe.

Añadido:

El error 4200 es cuando lo comprobé en MT4.

Sinceramente, nunca he utilizado estos recursos de SB. Pero qué le impide mirar en SB dónde, con qué métodos, se fijan los colores. Lo que mostró en el listado:

private:
   //--- dependent controls
   CPanel            m_white_border;        // the "white border" object
   CPanel            m_background;          // the background object
   CEdit             m_caption;             // the window title object
   CBmpButton        m_button_close;        // the "Close" button object
   CWndClient        m_client_area;         // the client area object

- son nombres de objetos - clases CPanel, CEdit, CBmpButton y CWndClient.

Y necesitas encontrar los nombres de los miembros de estas clases donde se almacenan los colores y usar qué métodos pueden ser inicializados o cambiados.

Y probablemente tendrás que inicializarlos primero y luego construir el objeto mismo.

 

¡Hola!

Al compilar da"undeclared identifier" (identificador no declarado)

Busqué y busqué, pero no entendí qué debía hacer para solucionar el error

¡Ayuda, por favor!

Archivos adjuntos:
Image_2.jpg  524 kb
 
Kedrov: Al compilar, aparece"identificador no declarado".
Haga clic en el mensaje de error. El cursor señalará el nombre de la variable. Debe ser declarado