Не тестировал библиотеку на динамическое создание объектов, поэтому не смогу сейчас подсказать.
Так и подумал :)
Для несложных объектов написал вот такое:
//+------------------------------------------------------------------+//| Удаляет указатель из массива элементов |//+------------------------------------------------------------------+void CWndContainer::DeleteElementsFromArray(constint window_index,constint id)
{
int windows_total=::ArraySize(m_windows);
//--- Если в базе нет форм для элементов управленияif(windows_total<1)
{
::Print(__FUNCTION__," > Нету ни одной формы.");
return;
}
//--- Если запрос на несуществующую формуif(window_index>=windows_total)
{
::Print(PREVENTING_OUT_OF_RANGE," window_index: ",window_index,"; windows total: ",windows_total);
return;
}
//--- Удалим из общего массива элементов
DeleteElement(id,m_wnd[window_index].m_elements);
//--- Удалим из массива главных элементов
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);
}
//+------------------------------------------------------------------+//| Удаляет указатель из массива элементов |//+------------------------------------------------------------------+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);
}
//+------------------------------------------------------------------+
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Версия MT4.
Эксперты\Статья09\TestLibrary03
Edit постоянно мерцает.
Анатолий Кажарский Пожалуйста, помогите решить эту ошибку.
https://www.mql5.com/en/forum/274301
Добрый день.
Проблема посерьезнее :)
Создаем динамический объект, например лейбл
...
Не тестировал библиотеку на динамическое создание объектов, поэтому не смогу сейчас подсказать.
Ещё один пример приложения, GUI которого создано с помощью этой библиотеки:
Версия MT4.
К сожалению, сейчас я не могу помочь, так как она больше не работает на MT4. Эта версия библиотеки была протестирована только на MT5.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: EasyAndFastGUI - библиотека для создания графических интерфейсов
Анатолий Кажарский, 2018.08.24 10:09
Ещё один пример приложения, GUI которого создано с помощью этой библиотеки:
Не тестировал библиотеку на динамическое создание объектов, поэтому не смогу сейчас подсказать.
Так и подумал :)
Для несложных объектов написал вот такое:
Подскажите , в таблице кнопка с картинкой добавляется только в первый столбик , а в остальные не работает .
Это баг или нет ?
Подскажите , в таблице кнопка с картинкой добавляется только в первый столбик , а в остальные не работает .
Во все можно добавлять.
Во все можно добавлять.
Спасибо , я разобрался .
Но странно , если в ячейке выставлено выравнивание по центру или по правому краю , то картинку не видно .
Если по левому то работает нормально .
Спасибо , я разобрался .
Но странно , если в ячейке выставлено выравнивание по центру или по правому краю , то картинку не видно .
Если по левому то работает нормально .
Да, сейчас такое ограничение есть (только по левому краю).