Discusión sobre el artículo "Interfaces gráficas XI: Integración de la librería gráfica estándar (build 16)" - página 4

 

Añadí una línea en la biblioteca y ¡funcionó! ¡Sí, compañeros!

Lo que añadí está resaltado en amarillo. Dónde lo añadí:

void CTable::DrawImage(const int column_index,const int row_index)

  {

//--- Расчёт координат

   int x =m_columns[column_index].m_x+m_columns[column_index].m_image_x_offset;

   int y =m_rows[row_index].m_y+m_columns[column_index].m_image_y_offset;

//--- Выбранная картинка в ячейке и её размеры

   int  selected_image =m_columns[column_index].m_rows[row_index].m_selected_image;

   uint image_height   =m_columns[column_index].m_rows[row_index].m_images[selected_image].Height();

   uint image_width    =m_columns[column_index].m_rows[row_index].m_images[selected_image].Width();

//--- Рисуем

   for(uint ly=0,i=0; ly<image_height; ly++)

     {

      for(uint lx=0; lx<image_width; lx++,i++)

        {

         //--- Если нет цвета, перейти к следующему пикселю

         if(m_columns[column_index].m_rows[row_index].m_images[selected_image].Data(i)<1)

            continue;

         //--- Получаем цвет нижнего слоя (фона ячейки) и цвет указанного пикселя картинки

         uint background  =(row_index==m_selected_item)? m_selected_row_color : m_canvas.PixelGet(x+lx,y+ly);

         uint pixel_color =m_columns[column_index].m_rows[row_index].m_images[selected_image].Data(i);

         //--- Смешиваем цвета

         uint foreground=::ColorToARGB(m_clr.BlendColors(background,pixel_color));

         //--- Рисуем пиксель наслаиваемого изображения

         m_table.PixelSet(x+lx,y+ly,foreground);

        }

     }

   m_table.Update(true);

  }


 
Oleksii Chepurnyi:

Hice las celdas-botones, pero no había ninguna tarea para cambiar la imagen....

El método Update() tiene el redibujado por defecto en false. Para redibujar hay que usar Update(true)


¡Así que está claro!

Siempre estoy a favor de la verdad, cuando fasle me lo huelo enseguida :)

 

¿Cómo cambiar los elementos de un combobox una vez creado?

 

Tengo un problema, cuando selecciono un elemento combobox, cualquier elemento en CheckBoxList no se hace clic.

 
CE 2 10:53:44.305 BreakEvenPending (CADJPY,M15) cero dividir en 'Curve.mqh' (693,9)
 
Proporcione breves ejemplos para reproducir el problema si desea ayuda.
 

Hola Otto

¿ha comentado esto el programador entretanto o ha corregido los errores?

El dilema comienza con el primer capítulo de Interfaz Gráfica I.

Todo esto es una gran pena, ya que el programador ha hecho mucho trabajo con los muchos artículos que hay aquí.

Pero si el compilador está constantemente lanzando mensajes de error, entonces se pierden rápidamente las ganas de volver a intentarlo

y el efecto de aprendizaje, por supuesto, no se da.


VG


Steffen

 

Yo sólo utilizaría la última versión.

Una visión general está aquí: https://www.mql5.com/en/code/19703

EasyAndFastGUI library for creating graphical interfaces
EasyAndFastGUI library for creating graphical interfaces
  • votos: 22
  • 2018.03.01
  • Anatoli Kazharski
  • www.mql5.com
The EasyAndFastGUI library allows creating graphical interfaces for custom MQL programs.
 

Yo también he abandonado el tema.

Sé de qué se queja Otto.

Pero casi siempre he conseguido que volviera a funcionar -mucha reprogramación pero siempre funcionaba después-. Sólo se pierde el tiempo.


El creador debería escribir BETA en letras enormes.


Porque eso es todo lo que es.

 

cómo mover a la derecha la inscripción y el icono juntos:

El método IconXGap(...) mueve el icono por separado, pero la inscripción no he encontrado cómo