初学者的问题 MQL5 MT5 MetaTrader 5 - 页 793

 
Vladimir Karputov:

п.5.:)


  • 你不需要警报--只需做Print()。
  • 你需要通过以下方式对事件进行筛选。
    • lparam
    • dparam
    • 和sparam

我可以把它筛出来。但我的问题是关于其他方面的。
我想了解(我的头不仅仅是用来戴帽子的,对吗?)这个功能是否正常工作。它应该是这样的,还是有什么问题?

 
User_mt5:

试图在一个对象上的鼠标点击时获得OnChartEvent调用。

...


以下是"CHARTEVENT_OBJECT_CLICK"的传递内容

活动

id参数值

lparam参数值

dparam参数值

参数值sparam

鼠标点击一个图形对象的事件

鼠标点击

X坐标

Y坐标

发生事件的图形对象的名称


也就是说,你需要捕捉id==CHARTEVENT_OBJECT_CLICK和sparam==你的对象的名称。
 
Vladimir Karputov:

以下是"CHARTEVENT_OBJECT_CLICK"的传递内容

活动

参数值id

lparam参数值

dparam参数值

参数值sparam

鼠标点击一个图形对象的事件

鼠标点击

X坐标

Y坐标

发生事件的图形对象的名称


也就是说,你需要捕捉id==CHARTEVENT_OBJECT_CLICK和sparam==你的对象的名称。

我起初也是这么想的。但字符串给出了被点击的对象的名称。所以它似乎是一个输出 参数。
还是我错了?

 
User_mt5:

我起初也是这么想的。但这个字符串输出的是被点击的对象的名称。所以,显然,它毕竟是一个输出 参数。
还是我错了?


你需要捕捉对一个物体的点击吗?我在上面给了你一个提示,告诉你如何做。

关于交易、自动交易系统和策略测试的论坛

初学者的问题 MQL5 MT5 MetaTrader 5

Vladimir Karputov, 2017.11.07 13:38


以下是"CHARTEVENT_OBJECT_CLICK"的传递内容

活动

参数值id

参数值 lparam

dparam参数值

参数值sparam

鼠标点击一个图形对象的事件

鼠标点击

X坐标

Y坐标

发生事件的图形对象的名称


也就是说,你需要捕捉id==CHARTEVENT_OBJECT_CLICK和sparam==你的对象的名称。

 

是的,是的,我想我已经得到了它。
该函数本身是由任何事件(包括鼠标和键盘)调用的,在里面你需要过滤正确的事件。
谢谢。

 
User_mt5:

是的,是的,我想我已经得到了它。
该函数在任何事件(包括鼠标和键盘)上都被调用,你需要在里面过滤出正确的事件。
谢谢。


有几个事件(事件的类型):点击、创建、改变属性......。因此,首先你必须按身份证筛选出事件,然后按sparam筛选。


 
Vladimir Karputov:

有几个事件(事件的类型):点击、创建、改变属性......。因此,首先你必须按身份证筛选出事件,然后按sparam筛选。


是的,谢谢你。出于某种原因,我想,有可能在函数调用的层面上进行筛选。我想通过id来筛选出所有的东西,所以我把id放在函数调用中。
"好吧,疯子,你能拿什么!"))。
而在内部,当然也很容易。再次感谢。

 

我不想为一个小问题创建一个新的主题,也许新来的人也会觉得知道这个问题很有用,就像我。

在什么时候可以提交新的自由职业工作申请?

如果我昨天已经用完了10个。

 

谁能告诉我该走哪条路?Excel 有新的函数 "预测函数 "等--例如 "PREPARTS.ETS","PREPARTS.ETS.DOVINTERVAL"。

MQL5 中是否有类似的东西?即输入数据阵列-输出预测阵列。

为了能够像截图中那样建立一条新的线,在底部指标中的白线。

 

朋友们,帮助一个傻瓜。该想法如下。当 "Ind "变量达到一个给定的水平时,我们改成等待 "Value "改变方向,同时等待 "Ind "不再被检查。


   if(Ind[0]<=-0.7)
     {
      while(Value[3]>Value[2]<Value[1])
        {
         if(CopyBuffer(InpInd2_Handle,1,SignalBar,3,Value)<=0)
           {
            Recount=true;
            return;
           }
        }
      if(BuyPosOpen) BUY_Open=true;
     }


什么是正确的方法?