新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1636 1...162916301631163216331634163516361637163816391640164116421643...1953 新评论 Valeriy Yastremskiy 2021.09.30 08:06 #16351 Alexey Viktorov #: 情况恰恰相反。在OnDeInit()中,专家顾问没有时间通过循环删除所有对象。这在论坛上被讨论过。解决办法是毫不含糊的,按前缀删除一切... 前缀不是没有循环吗? Alexey Viktorov 2021.09.30 08:19 #16352 Valeriy Yastremskiy #:前缀不是没有循环吗? int ObjectsDeleteAll( long chart_id, // идентификатор графика const string prefix, // префикс имени объекта int sub_window=-1, // индекс окна int object_type=-1 // тип объекта для удаления ); ObjectsDeleteAll - Графические объекты - Справочник MQL4 docs.mql4.com ObjectsDeleteAll - Графические объекты - Справочник MQL4 Valeriy Yastremskiy 2021.09.30 08:21 #16353 Alexey Viktorov #: 哦,伙计...你知道,这只是旧时代,你知道吗? 是的,我就是这么做的。作为一个好的经验法则,不要删除任何多余的东西,只删除你自己的) Taras Slobodyanik 2021.09.30 08:30 #16354 Alexey Viktorov #: 情况恰恰相反。在OnDeInit()中,专家顾问没有时间通过循环删除所有对象。这个问题在论坛上已经讨论过了。解决办法是毫不含糊的,删除所有的前缀... 事实恰恰相反,ObjectsDeleteAll没有时间删除所有东西,因为它被deinit打断了) 而一个简单的循环会删除一切--终端在等待程序。 ps.ObjectsDeleteAll是同一个循环,与自定义的循环没有区别。 pribludilsa 2021.09.30 09:34 #16355 如何在mql5程序中处理一个文件而不把文件写入磁盘,而是只在RAM中工作,以加快速度。我想把数据从一个mql5程序转移到我电脑上的一个程序。 Alexey Viktorov 2021.09.30 09:52 #16356 pribludilsa #: 如何在mql5程序中处理文件而不把文件写入磁盘,而只在RAM中工作,以加快速度。我想把数据从一个mql5程序转移到我电脑上的一个程序。 如果不写到磁盘上,你可以尝试 BD SQLite,但我没有做过,对成功也不是很有信心。一般来说,你需要进行实验。 pribludilsa 2021.09.30 09:56 #16357 Alexey Viktorov #:如果不写到磁盘上,你可以尝试 BD SQLite,但我没有做过,对成功也不是很有信心。一般来说,你需要进行实验。 谢谢。 Artyom Trishkin 2021.09.30 10:18 #16358 Valeriy Yastremskiy #:最好能给出理由,关于位移,做得好,我想写) 这就是我所指望的--要么对方愿意思考原因,要么别人在第二次(第三次、第五次)告诉对方--这更容易理解(尤其是如果对方想理解,表现出兴趣)。 Nerd Trader 2021.09.30 12:33 #16359 Artyom Trishkin #:删除的周期必须颠倒过来。而这不仅适用于删除图形对象,而且一般适用于删除终端列表中的任何对象。是不是因为对象被系统地存储在一个数组中? 如果你通过一个循环(ArrowDown和ArrowUp)分别删除每组对象,它们会被正确地从图表中删除。for(ushort i=0; i < n_arrow_down ; i++) { Print("ObjectName ",ObjectName(i),", i-down = ",i); ObjectDelete("ArrowDown"+IntegerToString(i, 4, '0')); } for(ushort i=0; i < n_arrow_up ; i++) { Print("ObjectName ",ObjectName(i),", i-up = ",i); ObjectDelete("ArrowUp"+IntegerToString(i, 4, '0')); } 而循环的输出与第一种情况相同: 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 21 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 20 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 19 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 18 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 17 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 16 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 15 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 14 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 13 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 12 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName , i-up = 11 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0020, i-up = 10 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0018, i-up = 9 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0016, i-up = 8 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0014, i-up = 7 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0012, i-up = 6 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0010, i-up = 5 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0008, i-up = 4 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0006, i-up = 3 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0004, i-up = 2 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0002, i-up = 1 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0000, i-up = 0 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0017, i-down = 18 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0015, i-down = 17 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0013, i-down = 16 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0011, i-down = 15 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0009, i-down = 14 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0007, i-down = 13 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0005, i-down = 12 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0003, i-down = 11 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowUp0001, i-down = 10 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0018, i-down = 9 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0016, i-down = 8 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0014, i-down = 7 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0012, i-down = 6 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0010, i-down = 5 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0008, i-down = 4 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0006, i-down = 3 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0004, i-down = 2 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0002, i-down = 1 2021.09.30 15:15:59.721 2021.01.04 07:56:37 test EURUSD,M1: ObjectName ArrowDown0000, i-down = 0 Nerd Trader 2021.09.30 12:38 #16360 MakarFX #: 为什么要通过一个循环来删除? 我不知道有一个ObjectsDeleteAll,现在我想把它弄清楚。 1...162916301631163216331634163516361637163816391640164116421643...1953 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
情况恰恰相反。在OnDeInit()中,专家顾问没有时间通过循环删除所有对象。这在论坛上被讨论过。解决办法是毫不含糊的,按前缀删除一切...
前缀不是没有循环吗?
前缀不是没有循环吗?
哦,伙计...你知道,这只是旧时代,你知道吗?
是的,我就是这么做的。作为一个好的经验法则,不要删除任何多余的东西,只删除你自己的)
情况恰恰相反。在OnDeInit()中,专家顾问没有时间通过循环删除所有对象。这个问题在论坛上已经讨论过了。解决办法是毫不含糊的,删除所有的前缀...
事实恰恰相反,ObjectsDeleteAll没有时间删除所有东西,因为它被deinit打断了)
而一个简单的循环会删除一切--终端在等待程序。
ps.ObjectsDeleteAll是同一个循环,与自定义的循环没有区别。
如何在mql5程序中处理文件而不把文件写入磁盘,而只在RAM中工作,以加快速度。我想把数据从一个mql5程序转移到我电脑上的一个程序。
如果不写到磁盘上,你可以尝试 BD SQLite,但我没有做过,对成功也不是很有信心。一般来说,你需要进行实验。
如果不写到磁盘上,你可以尝试 BD SQLite,但我没有做过,对成功也不是很有信心。一般来说,你需要进行实验。
最好能给出理由,关于位移,做得好,我想写)
这就是我所指望的--要么对方愿意思考原因,要么别人在第二次(第三次、第五次)告诉对方--这更容易理解(尤其是如果对方想理解,表现出兴趣)。
删除的周期必须颠倒过来。
而这不仅适用于删除图形对象,而且一般适用于删除终端列表中的任何对象。
是不是因为对象被系统地存储在一个数组中?
而循环的输出与第一种情况相同:如果你通过一个循环(ArrowDown和ArrowUp)分别删除每组对象,它们会被正确地从图表中删除。
为什么要通过一个循环来删除?