Erreurs, bugs, questions - page 2056

 

J'ai étudié ce code très attentivement, mais je n'arrive pas à comprendre pourquoi cela se produit.

#include <Graphics\Graphic.mqh> 

void OnStart()
{
  const string Name = __FILE__;
  const double X[] = {1, 2};
  
  CGraphic Graphic; 

  if (ObjectFind(0, Name) < 0) 
    Graphic.Create(0, Name, 0, 0, 0, 780, 380); 
  else 
    Graphic.Attach(0, Name); 

  ObjectSetInteger(0, Name, OBJPROP_XOFFSET, 0);

  Graphic.CurveAdd(X, CURVE_HISTOGRAM).HistogramWidth(6);
  
  Graphic.CurvePlotAll(); 
  Graphic.Update();  

  Sleep(1000);
  ObjectSetInteger(0, Name, OBJPROP_XOFFSET, 1); // Объект исчезает с экрана
}

Est-ce un bug dans la ressource personnalisée ou est-ce que je fais quelque chose de mal ?

Demo_BitmapOffset (OBJPROP_XOFFSET и OBJPROP_YOFFSET)
Demo_BitmapOffset (OBJPROP_XOFFSET и OBJPROP_YOFFSET)
  • votes : 19
  • 2011.03.25
  • MetaQuotes Software Corp.
  • www.mql5.com
С появлением двух новых свойств стало возможным загружать одно изображение с набором из нескольких картинок. Такая технология давно используется в web-дизайне и получила название Спрайт: Важно: для использования свойств OBJPROP_XOFFSET и OBJPROP_YOFFSET обязательно указывайте размер области видимости с помощью свойств OBJPROP_XSIZE и...
 
fxsaber:

J'ai étudié ce code très attentivement, mais je n'arrive pas à comprendre pourquoi cela se produit.

Est-ce un bug dans la ressource personnalisée ou est-ce que je fais quelque chose de mal ?


Le script se termine et supprime le graphique (vous pouvez mettre Sleep() à la toute fin pour vérifier).

 
Vladimir Karputov:

Le script se termine et supprime le graphique (Sleep() peut être placé à la toute fin pour vérifier).

Ce n'est pas le cas.

 
fxsaber:

Ce n'était pas le cas.


Oui, c'est vrai, j'ai aussi appelé Destroy().

 
Bug
void OnStart()
{
  int Property = CHART_SHOW; // Если указать тип ENUM_CHART_PROPERTY_INTEGER, то ошибка исчезает
  
  Print(ChartGetInteger(0, Property)); // 'ChartGetInteger' - no one of the overloads can be applied to the function call
}
 
  • CHART_WINDOW_IS_VISIBLEопределяет видимость подокна.
    //+------------------------------------------------------------------+
    //| Функция определяет, является ли данное окно или подокно графика  |
    //| видимым.                                                         |
    //+------------------------------------------------------------------+
    bool ChartWindowsIsVisible(bool &result,const long chart_ID=0,const int sub_window=0)
      {
    //--- подготовим переменную для получения значения свойства
       long value;
    //--- сбросим значение ошибки
       ResetLastError();
    //--- получим значение свойства
       if(!ChartGetInteger(chart_ID,CHART_WINDOW_IS_VISIBLE,sub_window,value))
         {
          //--- выведем сообщение об ошибке в журнал "Эксперты"
          Print(__FUNCTION__+", Error Code = ",GetLastError());
          return(false);
         }
    //--- запомним в переменную значение свойства графика
       result=value;
    //--- успешное выполнение
       return(true);
      }

Comment rendre une sous-fenêtre invisible et la sous-fenêtre principale visible ?


Expliquez comment la propriété CHART_WINDOW_IS_VISIBLE(en lecture seule) peut être appliquée ?

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
  • www.mql5.com
В этом разделе представлены примеры для работы со свойствами графика. Для каждого свойства приведены одна или две законченные функции, которые позволяют задавать/получать значение этого свойства. Эти функции можно использовать в своих MQL5 программах как есть. На рисунке показана графическая панель для наглядной демонстрации того, как изменение...
 

Bonjour, quel est le problème de metatrader sur le graphique de l'eurodollar ? Une bougie quotidienne pour le dimanche 9.10.2011 est apparue, sur le graphique horaire il n'y a qu'une heure 23:00 pour cette date. Cela est probablement dû au passage à l'heure d'hiver. Comment le réparer ? Cette bougie n'existait pas auparavant.

 
fxsaber:
Bug

Plus probablement une erreur dans la documentation

En fait, property_id a toujours été ENUM_CHART_PROPERTY_INTEGER.

 
A100:

Plus probablement une erreur dans la documentation

En fait, property_id a toujours été ENUM_CHART_PROPERTY_INTEGER.

Exactement !

 

J'ai déjà fait un rapport de bug, mais si quelqu'un est intéressé...

Roffild:
Проблема даже с чтением 1000 байт. Может на следующей неделе исправят, а то не получается сейчас читать бинарный файл больше 2гб.

void OnStart()
  {
   double data[];
   int hfile = FileOpen("bytes2147483640.bin", FILE_BIN);   
   Print("read = ", FileReadArray(hfile, data, 0, 1000));
   Print("size = ", ArraySize(data));
   FileClose(hfile);
   ArrayResize(data, 0);
   hfile = FileOpen("bytes2147483649.bin", FILE_BIN);   
   Print("read = ", FileReadArray(hfile, data, 0, 1000)); // read = 4026531841
   Print("size = ", ArraySize(data)); // size = 0
   Print("error = ", GetLastError()); // error = 0
   FileClose(hfile);
  }
Total Commander peut diviser un gros fichier (j'ai pris des mkv) en fichiers de la bonne taille. Seule la taille du fichier est importante pour la vérification, pas le contenu du fichier.