Erros, bugs, perguntas - página 351

 
O mesmo erro emCHistoryOrderInfo::FormatOrder, CDealInfo::FormatDeal
 
Mr.FreeMan:

Porque é que o perito é descarregado quando o botão é premido?

O que é que diz no diário de bordo?
 
sergey1294:
O que se lê no registo?


2011.04.03 19:19:31 simples (EURUSD,M15) Array out of range in ' simple.mq5' (43,19)

Estenão éo código correcto, aqui está o código de um EA que é descarregado ao premir o botão:

int ZigZag1Handle,ZigZag2Handle,ZigZag3Handle;
double ZigZag1[],ZigZag2[],ZigZag3[];
string row;
int bar;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   if(ObjectFind(0,"history")<0)
     {
      ObjectCreate(0,"history",OBJ_BUTTON,0,100,100);
      ObjectSetInteger(0,"history",OBJPROP_XDISTANCE,220); 
      ObjectSetInteger(0,"history",OBJPROP_YDISTANCE,5);
      ObjectSetInteger(0,"history",OBJPROP_CORNER,CORNER_LEFT_UPPER); 
      ObjectSetString(0,"history",OBJPROP_TEXT,"Передать историю");   
      ObjectSetInteger(0,"history",OBJPROP_FONTSIZE,8);
      ObjectSetInteger(0,"history",OBJPROP_XSIZE,110); 
      ObjectSetInteger(0,"history",OBJPROP_YSIZE,20);
      ObjectSetInteger(0,"history",OBJPROP_SELECTABLE,false);
      ChartRedraw(0);
     }
   ZigZag1Handle=iCustom(NULL,0,"Examples\\ZigZag",6,2,3);
   return(0);
  }
//+------------------------------------------------------------------+
//| ChartEvent function                                              |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
  {
   if(id==CHARTEVENT_OBJECT_CLICK)
     {
      string Text="history";
      if(sparam==Text)
        {

         ArraySetAsSeries(ZigZag1,true);
         if(CopyBuffer(ZigZag1Handle,0,0,90,ZigZag1)<0){Comment("ZigZag1 error =",GetLastError());}

               if(ZigZag1[bar-1]>ZigZag1[bar-2])
                 {

                 }
        }
      ObjectSetInteger(0,"history",OBJPROP_STATE,false);

     }
  }
//+------------------------------------------------------------------+
 
Mr.FreeMan:


2011.04.03 19:19:31 simples (EURUSD,M15) Array out of range in ' simple.mq5' (43,19)

Código errado, aqui está o código do Expert Advisor que é descarregado ao premir o botão:

Está claramente escrito no diário de bordo o porquê. Se traduzido para russo, diz o seguinte - sair fora da matriz em simple.mq5. O erro na linha 43

E há mais uma coisa. Muito provavelmente, o erro é que não definiu o tamanho da matriz

double ZigZag1[],ZigZag2[],ZigZag3[];
Документация по MQL5: Операции с массивами / ArrayResize
Документация по MQL5: Операции с массивами / ArrayResize
  • www.mql5.com
Операции с массивами / ArrayResize - Документация по MQL5
 
sergey1294:
Está claramente escrito no diário de bordo o porquê. Se o traduzir para russo, diz o seguinte - sair fora da matriz no ficheiro simple.mq5.
aah) merda) compreendi a minha estupidez) obrigado.
 
Por favor, responda. Limitando a cache do indicador.
 
Cavalheiros! Pode dizer-me se existe uma classe que pode ser enviada uma série de elementos da tabela, e ela irá exibir esta tabela no gráfico?
 
Graff:
Cavalheiros! Pode dizer-me se existe uma classe que pode ser enviada uma série de elementos da tabela e ela irá exibir esta tabela num gráfico?
E para que fim?, especificar as condições.
 
Existe uma matriz multidimensional, só precisa de ser traçada como uma tabela. existe uma classe padrão para uma saída rápida da tabela?
Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
Graff:
uma matriz multidimensional, só precisa de ser traçada como uma tabela. talvez haja uma classe padrão para uma saída rápida da tabela?

Imprima-o para um ficheiro e procure-o em excel.

Mas penso que não ficarão satisfeitos com isto, por isso pedi condições adicionais como "isto deve ser exposto na mosca", etc.