No he probado la librería para la creación dinámica de objetos, así que no puedo aconsejarte ahora mismo.
Eso pensaba :)
Para objetos simples escribí esto:
//+------------------------------------------------------------------+//|| Elimina un puntero de la matriz de elementos ||//+------------------------------------------------------------------+void CWndContainer::DeleteElementsFromArray(constint window_index,constint id)
{
int windows_total=::ArraySize(m_windows);
//--- Si no hay formularios para controles en la base de datosif(windows_total<1)
{
::Print(__FUNCTION__,"> No hay una sola forma".);
return;
}
//--- Si la solicitud es para un formulario inexistenteif(window_index>=windows_total)
{
::Print(PREVENTING_OUT_OF_RANGE," window_index: ",window_index,"; windows total: ",windows_total);
return;
}
//--- Eliminar elementos de la matriz común
DeleteElement(id,m_wnd[window_index].m_elements);
//--- Eliminar los elementos principales de la matriz
DeleteElement(id,m_wnd[window_index].m_main_elements);
//---
DeleteElement(id,m_wnd[window_index].m_timer_elements);
//---
DeleteElement(id,m_wnd[window_index].m_available_elements);
//---
DeleteElement(id,m_wnd[window_index].m_auto_x_resize_elements);
//---
DeleteElement(id,m_wnd[window_index].m_auto_y_resize_elements);
}
//+------------------------------------------------------------------+//|| Elimina un puntero de la matriz de elementos ||//+------------------------------------------------------------------+template<typename T>
void CWndContainer::DeleteElement(constint id,T &array[])
{
bool del=false;
for(int i=0;i<ArraySize(array);i++)
{
if(del)
{
if(i==ArraySize(array)-1) break;
array[i] = array[i+1];
continue;
}
if(array[i].Id()==id)
{
del=true;
if(i==ArraySize(array)-1) break;
array[i] = array[i+1];
}
}
if(del) ArrayResize(array,ArraySize(array)-1,RESERVE_SIZE_ARRAY);
}
//+------------------------------------------------------------------+
MT4 Versión.
Experts\Article09\TestLibrary03
La Edición siempre parpadea.
Anatoli Kazharski Por favor, ayudar a resolver este error.
https://www.mql5.com/en/forum/274301
Buenas tardes.
Un problema mayor :)
Crear un objeto dinámico, por ejemplo una etiqueta
...
No he probado la biblioteca para la creación de objetos dinámicos, así que no puedo darte ningún consejo ahora.
Otro ejemplo de una aplicación cuya GUI se crea utilizando esta biblioteca:
MT4 Versión.
Lamentablemente no puedo ayudar ahora, porque ya no funcionaba para MT4. Esta versión de la biblioteca ha sido probado sólo en el MT5.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: EasyAndFastGUI - библиотека для создания графических интерфейсов
Anatoli Kazharski, 2018.08.24 10:09
Ещё один пример приложения, GUI которого создано с помощью этой библиотеки:
No he probado la librería para la creación dinámica de objetos, así que no puedo aconsejarte ahora mismo.
Eso pensaba :)
Para objetos simples escribí esto:
Me podeis decir, en la tabla el botón con una imagen se añade solo a la primera columna, y en el resto no funciona.
¿Es un bug o no?
En la tabla, el botón con una imagen se añade sólo a la primera columna, y en el resto no funciona.
Se puede añadir a todas ellas.
Se puede añadir a todo.
Gracias, lo he solucionado.
Pero extrañamente, si la alineación en la celda se establece en el centro o la derecha, la imagen no es visible.
Si la alineación es a la izquierda, funciona bien.
Gracias, ya lo tengo.
Pero extrañamente, si la alineación en la celda se establece en el centro o en el borde derecho, la imagen no es visible.
Si está en el borde izquierdo, funciona bien.
Sí, ahora existe esa restricción (sólo borde izquierdo).