Preguntas de un "tonto" - página 29

 
Renat:
Visualisotor, al igual que toda la plataforma, lleva mucho tiempo en fase de lanzamiento. No hay que confundir el proceso continuo de lanzamiento de nuevas versiones con el estado beta.

Nuestra forma de trabajar es la mejora constante con construcciones frecuentes.
Renat, no voy a discutir, pero si hablamos de visualización - Sí, hay una liberación, pero de hecho ni siquiera todas las cosas básicas funcionan (o funcionan de una manera muy extraña), tenemos que soñar con cosas más complejas.
 
Interesting:

Es lógico suponer que se devuelve 0 en lugar del número de píxeles :)

Poner un control en el resultado de esta cadena y manejar la división por 0.

Y en cuanto a devolver 0 en lugar de píxeles, es directo a la SD...

Hasta ahora he establecido la comprobación con un valor fijo en caso de error:

   if(width == 0) {  dbl_width = 1000;  } else {  dbl_width = width;  }

Me he asegurado de que las funciones relacionadas con la apariencia del gráfico funcionan en el probador. Pero he encontrado un "bug" más. Las imágenes .bmp del gráfico en el modo de visualización no se muestran como nada:

¿Alguien se ha encontrado con este problema?

 
tol64:

Hasta ahora he establecido una prueba de valor fijo en caso de error:

Me aseguré de que las funciones relacionadas con la apariencia del gráfico funcionan en el probador. Pero he descubierto otro "error". Las imágenes .bmp del gráfico en el modo de visualización no se muestran como nada:

¿Alguien se ha encontrado con este problema?

Piensa que no es un "bug" sino un "truco", según el cual todo será así en la versión 500/600/1000...

Aunque hay que creer cómo y de dónde cuelgan los gráficos en la carta, y los telépatas dicen descansar hoy en día. :)

 
Interesting:

Piensa que no es un 'bug', sino una 'jugada astuta', según la cual todo será así en la versión 500/600/1000...

Aunque tengo que creer cómo y de dónde cuelga la carta, y los telépatas dicen que están descansando hoy en día. :)

En el modo de tiempo real, todo funciona. Y en el modo de visualización, estos espacios en blanco se muestran.

Así es como especifico la procedencia de los archivos:

#resource "\\Images\\IP_MQ5_TI.bmp"
#resource "\\Images\\IP_MQ5_MM.bmp"
#resource "\\Images\\IP_MQ5_TS.bmp"

#resource "\\Images\\IP_MQ5_TI_Hide.bmp"
#resource "\\Images\\IP_MQ5_MM_Hide.bmp"
#resource "\\Images\\IP_MQ5_TS_Hide.bmp"

Así es como los asigno a las variables globales:

string TI_bmp_nm  = "TI";
string TI_bmp_pth = "::Images\\IP_MQ5_TI.bmp";
string MM_bmp_nm  = "MM";
string MM_bmp_pth = "::Images\\IP_MQ5_MM.bmp";
string TS_bmp_nm  = "TS";
string TS_bmp_pth = "::Images\\IP_MQ5_TS.bmp";

string hd_TI_bmp_nm  = "TI_hide";
string hd_TI_bmp_pth = "::Images\\IP_MQ5_TI_Hide.bmp";
string hd_MM_bmp_nm  = "MM_hide";
string hd_MM_bmp_pth = "::Images\\IP_MQ5_MM_Hide.bmp";
string hd_TS_bmp_nm  = "TS_hide";
string hd_TS_bmp_pth = "::Images\\IP_MQ5_TS_Hide.bmp";

Así es como he implementado la función de creación de objetos:

void Create_BMP_Label(long   chart_id,  // id графика
                      string bmp_nm,    // имя объекта
                      string bmp_path,  // путь к обекту
                      long   anchor,    // точка привязки
                      long   corner,    // угол привязки
                      int    x_dist,    // координата по шкале X
                      int    y_dist)    // координата по шкале Y
  {
   ObjectCreate(chart_id,bmp_nm,OBJ_BITMAP_LABEL,0,0,0);          // создание объекта
   ObjectSetString(chart_id,bmp_nm,OBJPROP_BMPFILE,0,bmp_path);   // BMP файл
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_ANCHOR,anchor);       // установка точки привязки
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_CORNER,corner);       // установка угола привязки
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_XDISTANCE,x_dist);    // установка координаты X
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_YDISTANCE,y_dist);    // установка координаты Y
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_SELECTABLE,false);    // нельзя выделить объект, если FALSE
   ObjectSetString(chart_id,bmp_nm,OBJPROP_TOOLTIP,"\n");         // нет всплывающей подсказки, если "\n"
  }

En OnInit( ), la función también se llama en OnTick(), siempre que no se encuentre el objeto.

En OnTick() ahora puse la comprobación de error y el probador me mostró el error:

Y esto significa que la Orden no fue encontrada - ERR_TRADE_ORDER_NOT_FOUND. Todavía no he utilizado las funciones de comercio en el Asesor Experto y no puede haber órdenes)))

Los objetos de tipo OBJ_LABEL se muestran correctamente. El "error" se refiere sólo a las imágenes .bmp en el modo de visualización en el probador.

En tiempo real, todo está bien:

Y en el modo de visualización es así:

Para mí es importante saber de qué lado está el bicho. Porque si es por parte de la plataforma comercial, dejaré que otros se ocupen temporalmente.

 

tol64:

Los objetos de tipo OBJ_LABEL se muestran correctamente. El "error" sólo se aplica a las imágenes .bmp en modo de visualización en el probador.

En tiempo real todo está bien:

Algunos objetos no se muestran en el modo de visualización, o se muestran incorrectamente.

Esto también se aplica a las imágenes, aparentemente los desarrolladores no han llegado a esta funcionalidad (tienen otros problemas, y no sólo con el probador).

Por cierto, la plantilla con nombre de experto "intenta repetir" todo lo que está disponible en el modo real, esto se puede utilizar para identificar aquellos objetos que aún no se muestran en el modo de visualización.

 
tol64:

En el modo de tiempo real, todo funciona. Pero en el modo de visualización, estos espacios en blanco aparecen.

No está claro por qué funciona.

void Create_BMP_Label(long   chart_id,  // id графика 0 если текущий
                      string bmp_nm,    // имя объекта
                      string bmp_path,  // путь к обекту
                      long   anchor,    // точка привязки          от
                      long   corner,    // угол привязки
                      int    x_dist,    // координата по шкале X
                      int    y_dist)    // координата по шкале Y   до - значение не присвоено
  {
   ObjectCreate(chart_id,bmp_nm,OBJ_BITMAP_LABEL,0,0,0);          // создание объекта
   ObjectSetString(chart_id,bmp_nm,OBJPROP_BMPFILE,0,bmp_path);   // BMP файл
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_ANCHOR,anchor);       // установка точки привязки
   // ObjectSetInteger(chart_id,bmp_nm,OBJPROP_CORNER,corner);       // установка угола привязки зачем?
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_XDISTANCE,x_dist);    // установка координаты X
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_YDISTANCE,y_dist);    // установка координаты Y
   ObjectSetInteger(chart_id,bmp_nm,OBJPROP_SELECTABLE,false);    // нельзя выделить объект, если FALSE
   ObjectSetString(chart_id,bmp_nm,OBJPROP_TOOLTIP,"\n");         // нет всплывающей подсказки, если "\n"
  }

El ejemplo correcto se encuentra al final de la página

También hay que buscar primero y volver a dibujar, he visto en alguna parte que es mejor estar salvaguardado.

// Por favor, no me ganes, estoy aprendiendo yo mismo.

 
MetaDriver:
¿Cuándo es el próximo?

En el próximo día o dos.

La versión 480 está en fase de pruebas, la publicaremos después de las pruebas internas.

 
Renat:

En el próximo día o dos.

La versión 480 está en fase de pruebas, después de las pruebas internas la haremos pública.

Gracias.
 
Silent:

No está claro por qué funciona en absoluto.

El ejemplo correcto se encuentra al final de la página

También hay que buscar primero, y volver a dibujar - he visto en alguna parte que es mejor estar en el lado seguro.

// No golpees demasiado fuerte, estoy aprendiendo.

No entendí lo que querías decir. Acabas de destacar algo en rojo... )) ¿Has conseguido que los objetos BMP(OBJ_BITMAP_LABEL) aparezcan en el probador en modo de visualización?
 
tol64:
No entendí lo que querías decir. Has marcado algo en rojo... )) ¿Has conseguido que los objetos BMP(OBJ_BITMAP_LABEL) aparezcan en el probador en modo de visualización?

Todavía no los he probado.

He resaltado los errores, que deberían hacer que el código no funcione. Compara tu código con el del ejemplo del enlace.

Razón de la queja: