文章 "图形界面 X: 高级列表和表格管理。代码优化 (集成构建 7)" - 页 10

 
Anatoli Kazharski:

为什么不能?可以。这是您的 MQL 应用程序(指标或 EA)的一个类别。一切都一样。

您可以像这样从输入字段 中获取值:

m_spin_edit1.GetValue()

不,阿纳托利,你误解了我的意思,或者说我没有正确地表达自己的意思)))),我没有问这是否可行 我的意思是我不想把 它(交易算法)塞进去,让界面单独工作!

但我真正感兴趣的是,如何从CProgram 类之外获取这些数据?现在我再说一遍,我对 OOP 不太了解!我该如何组织程序结构?如何将 EA 与接口联系起来?CProgram 类的 所有对象 都在 "Menu.mqh "文件中,EA 无法访问这些对象,但它们之间一定有某种联系吧?或者如何建立链接,您能告诉我吗?

 
Viktor Glovluk:

不,阿纳托利,你误解了我的意思,或者说我没有正确地表达自己的意思)))),我没有问这是否可行 ,我的意思是我不想把 它(交易算法)塞进去,让界面单独工作!

我想这样做。但如果这种方法不适合你,那就将必要的类成员 公开,以便访问它们。

 
Anatoli Kazharski:

我会这样做。但如果这种方法不适合你,那就把必要的类成员 设为公共成员,这样你就可以访问它们了。

我真笨!你也没告诉我:)

您可以使用公共方法来获取必要的信息,这样就不会将整个类的字段设为公共字段!在 EA 本身中,在事件处理程序中,在参数sparam 上了解界面中点击的内容,我知道我是如何知道我调用了哪些按钮和字段的!昨天,我花了一整天的时间试图以某种方式赶上进度,而今天我一早起来就恍然大悟了!))

 
如何删除表格中的特定行?
 
dantetemp:
如何删除表中的某一行?

目前只能使用CTable::Rebuilding() 方法重建整个表并重新初始化。

在下一次更新中,我将添加删除表中单独一行的方法。

 
Anatoli Kazharski:

目前只能使用CTable::Rebuilding() 方法完全重建整个表并重新初始化。

在下一次更新中,我将添加删除表中单独一行的方法。

超级棒!下次更新大约是什么时候?
 
dantetemp:
超级棒!下次更新大概是什么时候?
本周。
 

你好,阿纳托利、

我找不到你们库的许可信息。

我可以使用您的程序库开发商业产品 吗?

我想把它用于 EA 的用户界面。

 
Drazen Penic:

...

我能用你们的库开发商业产品 吗?

我想将其用于 EA 的用户界面。

当然可以!
 
Anatoli Kazharski:
当然可以!

太好了

感谢你们出色的工作和非常棒的图书馆。