错误、漏洞、问题 - 页 2976 1...296929702971297229732974297529762977297829792980298129822983...3184 新评论 Mihail Matkovskij 2021.03.07 19:18 #29751 Nikolai Semko: 你说的是哪个缺点? 关于资源强度? 那是一个误导性的声明。 评论 消耗了同样多的资源。 它需要1-3毫秒的时间来生成和显示整个窗口的文字画布。 在MT5中,注释的输出时间稍长。如果你要每秒更新30次文本信息,你就不会看到任何滞后。 我没有详细调查过为什么Kanvas可能很慢,但我认为是出于同样的原因......数组中的像素不能被有选择地改变,也不能给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板直观地测试专家顾问时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。面板在每一个刻度上不断地被更新(ResourceCreate -ChartRedraw)。虽然我没有注意到标签的这种减速现象。 Aleksey Mavrin 2021.03.07 19:26 #29752 要么我是个傻瓜,要么滑雪板没有动静? MT4 build 1320double LotStep = SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP); double Lot=0.7; PrintFormat("LotStep %f, lot %f, %f, %f %f",LotStep,Lot,Lot/LotStep,MathFloor(Lot/LotStep),(int)double(Lot/LotStep)); //Print //2021.03.07 23:42:46.507 2021.02.25 07:36:40 EA_CCIcross_v1.0 AUDJPY,M5: LotStep 0.010000, lot 0.070000, 7.000000, 6.000000 6.000000 p/s/ 我理解7是6.9999,但为什么0.7除以0.1打印输出为7.000,而不是6.9999,令人误解。 Nikolai Semko 2021.03.07 20:45 #29753 Mihail Matkovskij:我还没有详细研究过为什么Kanvas可能很慢,但我想这是出于同样的原因......数组中的像素不能被有选择地改变并给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板直观地测试专家顾问时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。面板在每一个刻度上不断地被更新(ResourceCreate -ChartRedraw)。同时,我从来没有注意到标签的这种减速。 这只是你的想象力。当然没有什么是免费的,但kanvas是MT5中显示文本的最快方式,因为kanvas是一个基础,评论和标签对kanvas来说是次要的。如果你如此贪恋你的CPU资源,请使用unprinters... Alain Verleyen 2021.03.07 21:01 #29754 Mihail Matkovskij :我还没有详细研究过为什么Kanvas可能很慢,但我想这是出于同样的原因......数组中的像素不能被有选择地改变并给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内部(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板对EA进行视觉测试时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。在每个刻度上都有一个持续的更新(ResourceCreate -ChartRedraw)。我没有注意到标签的这种减速现象。 请不要谈论你不知道的事情。@Nikolai Semko 说得很对,Canvas运行得很快,没有任何问题和缺陷。 Alain Verleyen 2021.03.07 21:04 #29755 @Ilyas 编译器错误?建2817。 const ushort AN_USHORT_CONSTANT = 1; //--- ushort avariable = 1; switch(avariable) { case AN_USHORT_CONSTANT : Print("Compiler bug ?"); break; } Mihail Matkovskij 2021.03.07 21:43 #29756 Nikolai Semko: 这只是在你看来。 显然,没有什么是免费的,但kanvas是MT5中显示文本的最快方式,因为kanvas是基础,而评论和标签是kanvas的次要内容。 如果你对你的CPU资源如此贪婪的话,就使用引子吧... 如果canva本身是OBJ_BITMAP_LABEL的插件,而标签是OBJ_LABEL,你怎么知道标签是基于canva的? 当我在论坛上聊天时,我已经在标签上画出了输出面板的草图,有任何指定数量的行和列。而对于画布,我还有其他的任务,在我的其他应用程序中。而且它在那里也非常好用。 Alain Verleyen: 请不要谈论你不知道的事情。@Nikolai Semko 说得很对,Canvas工作起来很快,没有任何问题和缺陷。 所以你可能什么都知道?那么,也许可以分享你的知识或链接,在那里你可以读到关于MetaTrader的图表,所以我也知道你知道什么?:) A100 2021.03.07 22:10 #29757 Alain Verleyen:@Ilyas编译器错误?建2817。 在MQL中,const根本就不是const。事实上,const只能通过一个宏来编写 //const ushort AN_USHORT_CONSTANT = 1; //(*) #define AN_USHORT_CONSTANT ushort(1) //(**) void main() { int i[AN_USHORT_CONSTANT]; //(1) нормально ushort avariable = 1; switch(avariable) { case AN_USHORT_CONSTANT: //(2) нормально break; } } void f( int = AN_USHORT_CONSTANT ) {} //(3) нормально enum { e = AN_USHORT_CONSTANT }; //(4) нормально Alain Verleyen 2021.03.07 22:28 #29758 A100 :在MQL中,const根本就不是const。事实上const只能通过一个宏来编写 这是个错误 :-D A100 2021.03.07 22:47 #29759 Alain Verleyen: 是的,所以这是一个错误 :-D 请注意,这不是在一种情况下,而是在所有(1)(2)(3)(4)中都是这样设计的:用(*)会出现错误,但用(**)就可以了。也就是说,常量作为一个实体缺失了 Alain Verleyen 2021.03.07 23:22 #29760 A100 :请注意,这不是在一种情况下,而是在所有(1)(2)(3)(4)中都是这样设计的:用(*)会出现错误,但用(**)就可以了。也就是说,常量作为一个实体缺失了 我知道。这就是为什么我要求开发人员修复它。 1...296929702971297229732974297529762977297829792980298129822983...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你说的是哪个缺点?
我没有详细调查过为什么Kanvas可能很慢,但我认为是出于同样的原因......数组中的像素不能被有选择地改变,也不能给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板直观地测试专家顾问时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。面板在每一个刻度上不断地被更新(ResourceCreate -ChartRedraw)。虽然我没有注意到标签的这种减速现象。
要么我是个傻瓜,要么滑雪板没有动静? MT4 build 1320
我还没有详细研究过为什么Kanvas可能很慢,但我想这是出于同样的原因......数组中的像素不能被有选择地改变并给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板直观地测试专家顾问时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。面板在每一个刻度上不断地被更新(ResourceCreate -ChartRedraw)。同时,我从来没有注意到标签的这种减速。
我还没有详细研究过为什么Kanvas可能很慢,但我想这是出于同样的原因......数组中的像素不能被有选择地改变并给出重绘命令。你先对数组进行修改,然后你必须进行资源创建。它逐一复制像素,然后,类似地,逐一绘制出图表,然后再更新图表(ChartRedraw)。有多少不必要的操作...这在任何情况下都会在处理器忙于处理有用的数据时杀死它的负载。而标签至少占用较少的像素(因此输出速度更快)。然后,他们的输出机制完全在图表内部(不需要传递一个数组)。虽然我不完全确定 他们的算法,但我认为他们更快。我曾经在画布的基础上制作过一个文本输出面板。当在测试器中用这样的面板对EA进行视觉测试时,我对结果没有留下什么印象。除了EA自身的负荷外,面板的重绘也相当烦人。在每个刻度上都有一个持续的更新(ResourceCreate -ChartRedraw)。我没有注意到标签的这种减速现象。
@Ilyas
编译器错误?建2817。
这只是在你看来。
如果canva本身是OBJ_BITMAP_LABEL的插件,而标签是OBJ_LABEL,你怎么知道标签是基于canva的?
当我在论坛上聊天时,我已经在标签上画出了输出面板的草图,有任何指定数量的行和列。而对于画布,我还有其他的任务,在我的其他应用程序中。而且它在那里也非常好用。
请不要谈论你不知道的事情。@Nikolai Semko 说得很对,Canvas工作起来很快,没有任何问题和缺陷。
所以你可能什么都知道?那么,也许可以分享你的知识或链接,在那里你可以读到关于MetaTrader的图表,所以我也知道你知道什么?:)
@Ilyas
编译器错误?建2817。
在MQL中,const根本就不是const。事实上,const只能通过一个宏来编写
在MQL中,const根本就不是const。事实上const只能通过一个宏来编写
是的,所以这是一个错误 :-D
请注意,这不是在一种情况下,而是在所有(1)(2)(3)(4)中都是这样设计的:用(*)会出现错误,但用(**)就可以了。也就是说,常量作为一个实体缺失了
请注意,这不是在一种情况下,而是在所有(1)(2)(3)(4)中都是这样设计的:用(*)会出现错误,但用(**)就可以了。也就是说,常量作为一个实体缺失了