void cChartReInit::Run() // Scanning all charts and reinit if button is pushed
{
for(long i=ChartNext(0);i>0;i=ChartNext(i))
{
if(!ChartGetInteger(i,CHART_WINDOW_IS_VISIBLE)) continue;
long wc = ChartGetInteger(i,CHART_WINDOWS_TOTAL);
long wi = ObjectFind(i, pButtonName);
if(--wc!=wi) { CreateReinitButton(i); ChartRedraw(i); continue;}
if(ObjectGetInteger(i,pButtonName,OBJPROP_STATE))
{
ObjectSetInteger(i,pButtonName,OBJPROP_STATE,false);
ENUM_TIMEFRAMES cp = ChartPeriod(i);
Sleep(1350); // раньше это было не нужноChartSetSymbolPeriod(i, ChartSymbol(i), ((cp==PERIOD_M1) ? PERIOD_M5 : PERIOD_M1));
Sleep(1350); // раньше это было не нужноChartSetSymbolPeriod(i, ChartSymbol(i), cp);
}
ChartRedraw(i);
} // for(Charts)
}
Кнопочная переинициализация чарта с перерасчетом всех индикаторов, а также простенький и прозрачный объектно-ориентированный пример обработки всех чартов из одного эксперта.
那么a)为什么它对物体有效b)如果你更换它,它就开始崩溃了
不是所有的,21行中只有18行...
我试着把它们全部重写,还是不清楚。这似乎是一种类型。
那么a)为什么它对物体有效b)如果你更换它,它就开始崩溃了
不是所有的,21行中只有18行...
我试着把它们全部重写,还是不清楚。这似乎是一种类型。
是的,我做到了,谢谢你,它在滴答作响)。
现在像这样试试。
现在像这样试试。
试了一下,我无法从M1自动返回。如果我按上述方式列举
我可以每隔一段时间就返回,但如果我一下子指定_Period,我就会掉到M1并停留在那里。
即使我移动到指标的末尾,更新也不保存。
我不知道它为什么会堵塞,我正在努力弄清楚。
这是个拐杖,而不是同步化(在没有ticks时的输出上)。这个想法就像一辆坦克--出现了错误--切换到M1并返回。
只有从M1开始,它非常不总是释放。试了一下,从M1开始,我不能自动回去。如果我按上述方式列举
我可以每隔一段时间就回去,但如果我一下子指定_Period,我就会掉到M1,并停留在那里。
你的情况因一个小滑坡而得到治愈。
我的更糟糕。(顺便说一下,你的箱子以前不用Slip就能用,几周前停止工作了)。
同样的方案在其他(非当前)图表上停止工作,没有令人毛骨悚然的滑动。
代码来自这里:https://www.mql5.com/ru/code/224你的案件在处理时有一个小的滑动。
我的更糟糕。(顺便说一下,你的没有Slip的箱子曾经工作过,几周前停止了。)
但同样的方案在其他(非当前)图表上停止工作,没有令人毛骨悚然的滑动。
代码来自这里:https://www.mql5.com/ru/code/224/10323滑动在指标中不起作用,是吗?
链接到404页面抛出
滑动在指标中不起作用,是吗?
这是一个404页面链接。
是的。
尝试某种有成本的循环...
你可以用计时器来做,但我不喜欢这一切。
// 纠正了链接,先是通过 "我的代码",现在是通过kodobaza的普通入口。 // 现在能用了吗? 还是说我需要取消登录才能得到一个公共链接?
是的。 :(
尝试某种昂贵的循环...
我可以通过计时器来做,但我不喜欢这一切。
我试着用ChartRedraw 附加OnTimer,而不是切换到另一个时间框架--没有反应,它更新了,但错误挂起。
我再看看。
更新有一个怀疑,这一切都与线程有关。在某处,它们并不匹配,一个挂起了错误,另一个则自己跳动。然而,Ras-同步化。而且没有全面重新计算的命令。
我也曾尝试过
它似乎根本不起作用。不过是在kodobase里拍的。