Обсуждение статьи "Графические интерфейсы XI: Интеграция графической стандартной библиотеки (build 16)" - страница 4 12345678910 Новый комментарий Artem Virskiy 2017.12.27 17:45 #31 Добавил в библиотеке одну строчку и заработало! Ура, товарищи!Желтым выделено что добавил. Куда добавил: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); } Графические интерфейсы X: Обновления Графические интерфейсы X: Сортировка, Сохранение изображений в файл: Artem Virskiy 2017.12.27 17:49 #32 Oleksii Chepurnyi: Ячейки-кнопки делал, но менять картинку задачи небыло...У метода Update() по-умолчанию перерисовка установлена false. С перерисовкой нужно использовать Update(true)Так это ясный перец! Я всегда за правду, когда мне fasle я сразу чую :) Pavel Kolchin 2017.12.28 17:57 #33 как изменить пункты комбобокса после его создания? Andrii Djola 2018.01.21 18:46 #34 а у меня такая проблема, когда выбираю пункт combobox, то не нажимается любой item на CheckBoxList Andrej Nikitin 2018.03.02 10:14 #35 CE 2 10:53:44.305 BreakEvenPending (CADJPY,M15) zero divide in 'Curve.mqh' (693,9) Anatoli Kazharski 2018.03.02 11:38 #36 Предоставляйте краткие примеры для воспроизведения проблемы, если хотите, чтобы Вам помогли. Wolfram Steffen Siegert 2018.03.03 14:30 #37 Здравствуйте, Отто, прокомментировал ли программист это за прошедшее время или исправил ошибки? Дилемма начинается с первой главы Graphical Interface I. Все это очень жаль, поскольку программист проделал большую работу, опубликовав множество статей здесь. Но если компилятор постоянно выдает сообщения об ошибках, то быстро пропадает желание пробовать снова И обучающего эффекта, конечно, не будет. VG Штеффен HAMA PAD - простой MT5 build 1035 (x64) Бета версия MetaTrader 4 Carl Schreiber 2018.03.03 14:58 #38 Я бы использовал только последнюю версию. Обзор здесь: https://www.mql5.com/en/code/19703 EasyAndFastGUI library for creating graphical interfaces голосов: 22 2018.03.01 Anatoli Kazharski www.mql5.com The EasyAndFastGUI library allows creating graphical interfaces for custom MQL programs. Christian 2018.03.03 15:54 #39 Я тоже завязал с этой темой. Я знаю, на что жалуется Отто. Но мне почти всегда удавалось заставить его работать снова - много перепрограммирования, но потом он всегда работал. Только время потеряно. Создатель должен написать BETA огромными буквами. Потому что это все, чем она является. 2'000 => 400'000k за Помощь в кодировании Universal MA Cross EA Konstantin 2018.03.12 08:55 #40 как сместить вправо надпись с иконкой вместе: иконка отдельно двигается методом IconXGap(...), а надпись не нашел как 12345678910 Новый комментарий
Добавил в библиотеке одну строчку и заработало! Ура, товарищи!
Желтым выделено что добавил. Куда добавил:
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);
}
Ячейки-кнопки делал, но менять картинку задачи небыло...
У метода Update() по-умолчанию перерисовка установлена false. С перерисовкой нужно использовать Update(true)
Так это ясный перец!
Я всегда за правду, когда мне fasle я сразу чую :)
как изменить пункты комбобокса после его создания?
а у меня такая проблема, когда выбираю пункт combobox, то не нажимается любой item на CheckBoxList
Здравствуйте, Отто,
прокомментировал ли программист это за прошедшее время или исправил ошибки?
Дилемма начинается с первой главы Graphical Interface I.
Все это очень жаль, поскольку программист проделал большую работу, опубликовав множество статей здесь.
Но если компилятор постоянно выдает сообщения об ошибках, то быстро пропадает желание пробовать снова
И обучающего эффекта, конечно, не будет.
VG
Штеффен
Я бы использовал только последнюю версию.
Обзор здесь: https://www.mql5.com/en/code/19703
Я тоже завязал с этой темой.
Я знаю, на что жалуется Отто.
Но мне почти всегда удавалось заставить его работать снова - много перепрограммирования, но потом он всегда работал. Только время потеряно.
Создатель должен написать BETA огромными буквами.
Потому что это все, чем она является.
как сместить вправо надпись с иконкой вместе:
иконка отдельно двигается методом IconXGap(...), а надпись не нашел как