Теперь вы можете выносить графики финансовых инструментов за пределы окна торгового терминала. Это удобно при работе с несколькими мониторами. Например, на одном можно расположить основное окно платформы и следить за состоянием счета, а на другом — графики для оценки ситуации на рынке. Чтобы отделить график от терминала, отключите опцию...
https://www.metatrader5.com/ru/releasenotes/terminal/1898 中给出了一个示例。
MQL5
要使用 .NET 库函数,只需导入 DLL 本身即可,无需指定具体函数。MetaEditor 会自动导入所有可以使用的函数:
。
。
要调用库中的函数,只需导入: 。
TestClass 类的 Inc 函数的 C# 代码如下所示:
。 该脚本将返回值 42。
支持 .NET 库的工作正在进行中,计划在未来版本中扩大其使用范围。
WinAPI 函数按用途分为不同的文件:
.
绑定仅适用于 64 位架构。
在 Visual Studio community 2019中,一切都与作者所做的一样,但当他写道
"每个表单都有一个包含元素的公共列表。通过元素列表,该方法会找到控制器能够支持的元素,并订阅所需的事件。如果控制器不支持表单中的某个元素,它就会被忽略。"
唉,如果在测试表单上放置一个 SplitContainer 或 DataGridView,表单根本不会启动,原因不明,但像图表这样复杂的组件却启动了。
我附上一个测试示例,说明可以使用哪些组件进行修改(尽管表单启动了!)。
当尝试创建控制器时,GuiControllercontroller= new GuiController(assembly, form, m_global_events);
出现意外异常:具有此名称的键已经存在(对于 DataGridView),并且控制器没有创建(创建了窗体,可能可以显示窗体,但没有控制器如何控制窗体?)
同样,如果没有 SplitContainer 和/或 DataGridView 组件,则一切正常。
也许别人会绊倒
这是文章中的位置
"正如您所看到的,编译器可以理解在 Net 库中定义的外部枚举,并知道如何与它们一起工作"。
不知道是什么原因,编译器顽固地拒绝理解 C# 的枚举,所以我们把 C# 中的枚举拖到 Mql5 中,一切正常。
只是,瓦西里,你把交易面板中的买入和卖出按钮放反了 )))
但总的来说,这已经是最酷的事情了。感谢您的辛勤工作!)
我也遇到了同样的问题。
我的解决方法有点不同--我写了 GuiEventType::ClickOnElement,而不是 ClickOnElement。这样编译和运行就没有任何问题了。但如果是这样的话,就不清楚 Vasily 是如何做到的了。也许我做错了什么
但除此之外,这个东西真的很有必要,也很有用。可惜 MQL5 没有类似的功能(内置)。
我也遇到过同样的问题。
我用了一种不同的方法来解决这个问题--我写了 GuiEventType::ClickOnElement,而不是 ClickOnElement。之后,编译和运行都没有任何问题。但如果是这样的话,就不清楚 Vasily 是如何做到的了。也许我做错了什么
但除此之外,这个东西真的很有必要,也很有用。可惜 MQL5 没有类似的功能(内置)。
我就遇到过这样的错误:
@MQL_User,我按照你的方法做了:"......写GuiEventType::ClickOnElement,而不是ClickOnElement" - 一切正常!
这对 MT4 无效。我试过了,但没有任何结果。
我是 MQL5 的新手,从这篇文章中学到了很多!非常感谢!
我有一个问题。在过去的两天里,我一直在苦苦思索下面这个问题。
我甚至在另一台电脑上也成功完成了几个步骤,但每次当我尝试编译代码时,都会收到一条错误信息。
MQL 编译器指出 :下面任何枚举的 "未声明标识符"。
如果我将这些枚举从 MQL5 中 "注释 "掉,它就会相应地工作,这很有趣,因为这意味着代码可以工作,但无法读取枚举,这是我的猜测吗?
如果有人能帮助我,我将不胜感激 :)
谢谢、
我读到您需要在 MQH 文件中以与 DLL 中完全相同的方式声明枚举。
string ReceiveEvent(int event_n); // Returns JSON string.. Use JAson.mqh to Deserialize objects我如何在 OnTimer() 内使用此功能?
我使用的方法与文章中解释的相同。
我的问题是:我需要在 ReceiveEvent 函数中传递什么 int?抱歉我的无知,但我不明白。
请教一下,运行时GuiMtController.mq5程序报错,是什么问题?