文章 "图形界面 X: 在多行文本框中选择文本 (集成构建 13)" - 页 14

 
Konstantin:

在 CTabs类的方法

类的方法中,应突出显示检查数组是否为空,因为如果没有该检查,在没有标签页的情况下,整个表单会出错并崩溃。

如果在创建选项卡的方法中进行了检查,就不清楚您是如何创建CTabs 类型的元素的:

...
//--- 如果组中没有标签,则报告它
   if(TabsTotal()<1)
     {
      ::Print(__FUNCTION__," > 必须调用该方法, "
              "当组中至少有一个标签页时!使用 CTabs::AddTab() 方法"。);
      return(false);
     }
...

 
Anatoli Kazharski:

我不明白你是如何创建CTabs 类型的元素的,如果在创建标签的方法中有检查的话:

创建过程没有任何问题,除了突出显示的内容外,我没有对类源作任何改动,我使用了没有覆盖的类,也就是说,我没有赋予额外的功能,一切都在动态中运行,当标签页数量增加或减少时,标签页会被添加或移除。

当标签页数量 == 0 时,有时会弹出上述信息,但一切正常。

但如果不添加选中的标签,例如,在改变主窗体的大小时,机器人就会出错而崩溃。
 
Konstantin:

创建过程没有任何问题,除了突出显示的那个,我没有对类源作任何改动,我使用了没有覆盖的类,也就是说,我没有赋予额外的功能,一切都在动态中运行,当标签页数量的值增大或减小时,标签页被添加或删除

当标签页数量 == 0 时,有时会弹出上述信息,但一切正常。

但如果不添加选中的标签,例如在调整主窗体大小时,机器人就会出错并崩溃。

好吧,我会在下一个版本发布后再详细研究。届时会有重大改动,可以更快、更方便地开发程序库。
 
Anatoli Kazharski:

好的,我会在下一个版本发布后再详细了解。下一版将有重大改动,可以更快、更方便地开发程序库。

我希望库的结构不会改变?

你们都会做出上面提到的改动吗?

有一点我不太喜欢,图库与图纸目录是绑定在一起的,最好是把这个目录放在图库的目录里,这样它就可以放在任何地方,例如,使用 git 工作时,你至少要在两个地方修改所有内容。

 
Konstantin:

1.我希望图书馆的结构不会改变?

2. 你们都会做上面写的改动吗?

3.有一点我不太喜欢,图书馆与图片目录绑定在一起,最好把这个目录放在图书馆的目录里,这样它就可以放在任何地方,例如,使用 git 工作时,你至少要在两个地方修改所有内容。

1.我认为对于程序库的用户来说,这一点并不明显。所有的改动和添加都将在文章中详细描述。

2.一些。不是一次全部。

3.我认为可以移动的控件。当然,自定义控件也会留在那里。

 

您能告诉我如何在使用价格标尺压缩图表时通过鼠标实现 CStandardChart 类对象的工作 吗?

据我所知,库中并没有实现这些鼠标事件,您需要自己实现它们。无论如何,我以前从未做过,所以我在等待提示 )).
Использование аналитических объектов - Графики котировок, технический и фундаментальный анализ - Справка по MetaTrader 5
Использование аналитических объектов - Графики котировок, технический и фундаментальный анализ - Справка по MetaTrader 5
  • www.metatrader5.com
Определение трендов, построение каналов, выявление циклов и уровней поддержки/сопротивления — все эти и многие другие задачи решаются при помощи...
 
Konstantin:

您能告诉我如何在使用价格标尺压缩图表时通过鼠标实现 CStandardChart 类对象的工作 吗?

据我所知,库中并没有实现这些鼠标事件,您需要自己实现它们。无论如何,我以前从未做过,所以我在等待提示 ))。

我没有试过这种方法,所以不能给你提示。

我只能建议采用这种变体:

点击图表对象会生成一个标识符为ON_CLICK_SUB_CHART 的事件。字符串参数(sparam) 包含图表对象中字符的名称。在用户类的事件处理程序中接受带有该标识符的消息,在图表窗口中设置消息中的符号,并使用其就绪功能。

 
Anatoli Kazharski:

我没有试过这种方法,所以无法给你建议。

我只能建议采用这种变体:

点击图表对象会生成一个标识符为ON_CLICK_SUB_CHART 的事件。字符串参数(sparam) 包含图表对象中字符的名称。在用户类的事件处理程序中接受带有该标识符的消息,在图表窗口中设置消息中的符号,并使用其就绪功能。

OBJ_CHART 对象不起作用 ((

对图表对象 (OBJ_CHART) 的图表进行操作时,有以下限制:

  • 不能使用 ChartClose() 关闭图表;
  • 不能使用 ChartSetSymbolPeriod() 函数更改符号/周期;
  • 属性 CHART_SCALE、CHART_BRING_TO_TOP、CHART_SHOW_DATE_SCALE 和 CHART_SHOW_PRICE_SCALE (ENUM_CHART_PROPERTY_INTEGER) 不起作用。
 
Konstantin:

OBJ_CHART 对象上无法实现((

所以我建议的变体是相关的。)
 
Anatoli Kazharski:
因此,我建议的方案是相关的。)

不相关,但不可行,因为 MQ 开发人员没有为这些对象启用此功能。