文章 "图形界面 XI: 集成标准图形库 (统合构建 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); } Discussion of article "Graphical 图形界面 X: 升级渲染表格及代码优化 (集成编译 图形界面 X: 排序、重建表格和单元格中的控件 (集成编译 Artem Virskiy 2017.12.27 17:49 #32 Oleksii Chepurnyi:我做了单元格按钮,但没有更改 picture.... 的任务。Update() 方法的默认重绘设置为 false。如果要重绘,则需要使用 Update(true)这样就很清楚了! 我总是喜欢真相,当我发现真相时,我立刻就能嗅到它的味道:) Pavel Kolchin 2017.12.28 17:57 #33 如何在创建组合框后更改其项? Andrii Djola 2018.01.21 18:46 #34 我遇到了这样一个问题,当我选择一个组合框项时,CheckBoxList 上的任何项都不会被点击。 Andrej Nikitin 2018.03.02 10:14 #35 CE 2 10:53:44.305 BreakEvenPending (CADJPY,M15) 曲线.mqh "中的零除法 (693,9) Anatoli Kazharski 2018.03.02 11:38 #36 如果需要帮助,请提供简短的示例来重现问题。 Wolfram Steffen Siegert 2018.03.03 14:30 #37 你好,奥托、 在此期间,程序员是否对此发表过评论或纠正过错误? 这个难题是从《图形界面 I》的第一章开始的。 这非常可惜,因为程序员在这里的许多文章中做了大量工作。 但是,如果编译器不断抛出错误信息,那么你很快就会失去再试一次的欲望 学习效果当然也就无从谈起了。 VG Steffen Carl Schreiber 2018.03.03 14:58 #38 我只会使用最新版本。 概述请点击这里: https://www.mql5.com/en/code/19703 EasyAndFastGUI library for creating graphical interfaces 投票: 222018.03.01Anatoli Kazharskiwww.mql5.com The EasyAndFastGUI library allows creating graphical interfaces for custom MQL programs. Christian 2018.03.03 15:54 #39 我也放弃了这个话题。 我知道奥托在抱怨什么。 但我几乎总能让它重新工作起来--虽然要重新编程,但之后总能正常工作。损失的只是时间。 创建者应该用大大的字体写上 BETA。 因为这就是它的全部。 Konstantin 2018.03.12 08:55 #40 如何将碑文和图标一起向右移动: IconXGap(...)方法可以单独移动图标,但我还没有找到如何移动碑文的方法。 12345678910 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在库中添加了一行,就成功了!耶,伙伴们!
我添加的内容用黄色标出。我添加的位置:
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);
}
我做了单元格按钮,但没有更改 picture.... 的任务。
Update() 方法的默认重绘设置为 false。如果要重绘,则需要使用 Update(true)
这样就很清楚了!
我总是喜欢真相,当我发现真相时,我立刻就能嗅到它的味道:)
如何在创建组合框后更改其项?
我遇到了这样一个问题,当我选择一个组合框项时,CheckBoxList 上的任何项都不会被点击。
你好,奥托、
在此期间,程序员是否对此发表过评论或纠正过错误?
这个难题是从《图形界面 I》的第一章开始的。
这非常可惜,因为程序员在这里的许多文章中做了大量工作。
但是,如果编译器不断抛出错误信息,那么你很快就会失去再试一次的欲望
学习效果当然也就无从谈起了。
VG
Steffen
我只会使用最新版本。
概述请点击这里: https://www.mql5.com/en/code/19703
我也放弃了这个话题。
我知道奥托在抱怨什么。
但我几乎总能让它重新工作起来--虽然要重新编程,但之后总能正常工作。损失的只是时间。
创建者应该用大大的字体写上 BETA。
因为这就是它的全部。
如何将碑文和图标一起向右移动:
IconXGap(...)方法可以单独移动图标,但我还没有找到如何移动碑文的方法。