Для примера, один метод создания графического объекта вертикальная линия (OBJ_VLINE):
void CreateVLine(string aName,int aSubWindow=0,long aChartID=0)
{
ObjectCreate(m_id,m_name,OBJ_VLINE,aSubWindow,0,0);
Attach(aName,aChartID);
}
不是应该这样吗?
Для примера, один метод создания графического объекта вертикальная линия (OBJ_VLINE):
void CreateVLine(string aName,int aSubWindow=0,long aChartID=0)
{
Attach(aName,aChartID);
ObjectCreate(m_id,m_name,OBJ_VLINE,aSubWindow,0,0);
}
或者像这样
Для примера, один метод создания графического объекта вертикальная линия (OBJ_VLINE):
void CreateVLine(string aName,int aSubWindow=0,long aChartID=0)
{
ObjectCreate(aChartID,aName,OBJ_VLINE,aSubWindow,0,0);
Attach(aName,aChartID);
}
创建简单代码的例子已经够多了,但创建一个成功的类层次结构,或者至少是一个通用的、易于转换的产品的易实施方案的例子却没有。即使是 MQ 的标准类,也常常因为预先设定了各种可能性而使程序的编写复杂化。
这就是我的意思。
你需要先对整个系统进行演示。架构 先行。并展示每块砖头--特定的控制器--在其中的位置。
然后再演示这些控制器的工作原理(对不起,MFC 只是一张好图片)。
好的这非常好。
如果在第二部分讲述高级功能,人们就会更快地开始使用文章中的组件。
我还是会从表单 + 按钮(+ 输入框)开始,然后在第三部分才讲具体的控件组件--列表、菜单等。
毕竟,我们的任务是教授如何编写此类控件。
此外,只要在第二部分中给出表单+按钮(我指的是三种--单选、按下、复选)+编辑框,用户就会将这些类视为一个整体,并能独立创建自己的控件。
为了与表单交互,控件应该有四个方法:Init(...)、Show(X,Y)、Hide()、Event(),一切都将与现在在图表上创建控件时完全一样。因此,您已经可以编写自己的控制器了。
不过,我还是会坚持我的计划,在第三部分中将会有一个包含所有控件 的表单--作为一个示例或现成的模板使用会更方便--有必要删除一些东西、加倍一些东西以及所有东西,它将会是一个更现成的半成品。
我还是会坚持我的计划,在第三部分中将会有一个包含所有控件的表单。
这个话题很有意义......感谢您的报道....。
不过,读完这篇文章和评论后,我觉得算法的精髓有点难以实现。
我想:下面的算法不是更简单、更通用吗?
一个带有控制按钮的面板可以用任何具有强大编辑器的语言(如Visual Studio)来实现。
而且它(实现带按钮和其他功能的控制面板的程序)可以独立于 MT5 自主运行。
这些结果会输入一个文件,MT5 会定期从该文件中读取(设置中断也不错)。
因此,编程过程将得到简化,并具有通用性(可与任何程序和 MT4 一起工作)。
因此,主要问题是将生成的参数文件与程序正文对接。
在这个方向上,我希望看到 MT5 的发展,而不是功能.... 的平庸扩展。
通过 RAM 进行交换也不会有什么坏处--速度可能还要快 1000 倍。
此外,我们还可以考虑通过网络连接......这将非常有趣。
您怎么看?
我不明白第四项原则。你能举个例子吗?
我不明白第四项原则。你能举个例子吗?
你好,Leo,当你提到第四项原则时,你具体指的是什么?我知道这篇文章的主题 4 涉及 "控制工件"。您能进一步说明一下您的问题吗?
我想创建一个自定义图形对象,它由矩形、方框和一些信息组成。我会经常使用这个对象,因此我希望它能方便访问。是否可以在 MT5 工具栏中添加自定义图形对象?如果不能,能否提供一些其他建议?
奇怪...
不是应该这样吗?
或者像这样