Erreurs, bugs, questions - page 1709

 
fxsaber:
Je l'ai fait avec VirtualDub. Maintenant je vais trouver un programme pour pouvoir le ralentir.
Je ne peux pas le faire. Pouvez-vous me dire comment faire ?
Как замедлить GIF анимацию?
Как замедлить GIF анимацию?
  • botvet.ru
Иногда требуется замедлить смену кадров в GIF анимации и как это сделать мы сейчас и разберем. Для это нам потребуется программа - GIF Movie Gear(скачать надеюсь сможете сами, благо пока "варезники" не закрыли!). 1. Установите самостоятельно GIF Movie Gear. 2. Нажмите правой кнопкой мыши по Анимации и откройте её при помощи GMG. 3. Выделите все...
 
fxsaber:
Ça ne marche pas. Pouvez-vous me dire comment cela fonctionne ?
Vous aimez toujours autant compliquer les choses? https://www.yandex.ru/yandsearch?clid=9582&text=создание%20gif%20онлайн&l10n=ru&lr=2&redircnt=1474969742.1
 
fxsaber:
Ça ne marche pas. Pouvez-vous suggérer une version qui fonctionne ?
Vous pouvez poster les cadres séparément...
 

Merci, je l'ai obtenu par un service en ligne.

 
-Aleks-:
Vous pouvez poster les séquences séparément...
 
fxsaber:
Veuillez montrer le code complet + des informations sur le système d'exploitation, le navigateur et le type de terminal et de construction.
 
Karputov Vladimir:
Veuillez montrer le code complet + des informations sur le système d'exploitation, le navigateur et le type de terminal et de construction.

Il n'y a aucun moyen de le rendre complet - l'OOP le prend par la jambe. Mais voici le code responsable du dessin

  virtual int Calculate( const int rates_total,
                         const int prev_calculated,
                         const datetime &time[],
                         const double &open[],
                         const double &high[],
                         const double &low[],
                         const double &close[],
                         const long &tick_volume[],
                         const long &volume[],
                         const int &spread[] )
  {
    if (prev_calculated == 0)
    {
      const datetime TimeCur = TimeCurrent();
      
      this.LastTime = (TimeCur - (TimeCur % (24 * 3600))) * 1000;
      this.Count = 0;
    }

    this.SetEmpty(0, prev_calculated, rates_total - prev_calculated);    
      
    MqlTick Ticks[];
    
    const int Amount = this.GetFreshTicks(Ticks);
    
    if (Amount > 0)        
    {
      int Pos;

      const datetime LastTime2 = Ticks[0].time - (Ticks[0].time % PeriodSeconds());
      
      for (Pos = rates_total - 1; Pos >= 0; Pos--)
        if (time[Pos] == LastTime2)
          break;
          
      if (Pos >= 0)
      {
        int i = 0;
        
        while ((Pos < rates_total) && (i < Amount))
        {
          const datetime NextTime = time[Pos] + PeriodSeconds();
          
          while (i < Amount)
          {
            const MqlTick Tick = Ticks[i];
            
            if (Tick.time >= NextTime)
              break;

            if ((bool)(Tick.flags & TICK_FLAG_BUY))
              this[0][Pos] += (Tick.volume >= this.MinLot) ? Tick.volume : 0;
            else if ((bool)(Tick.flags & TICK_FLAG_SELL))
              this[1][Pos] -= (Tick.volume >= this.MinLot) ? Tick.volume : 0;

            i++;
          }
          
          Pos++;
        }        
      }        
    }

    return(rates_total);
  }

Construire

2016.09.23 12:42:22.405 Terminal        C:\Program Files\BCS Broker MetaTrader 5 Terminal
2016.09.23 12:42:22.405 Terminal        Windows 7 Ultimate (x64 based PC), IE 09.00, Intel Core i7-2700 K  @ 3.50 GHz, RAM: 8098 / 16301 Mb, HDD: 6387 / 30000 Mb, GMT+02:00
2016.09.23 12:42:22.405 Terminal        BCS Broker MetaTrader 5 Terminal x64 build 1430 started (BCS Broker)
 
fxsaber:

Il n'y a aucun moyen de le rendre complet - l'OOP le prend par la jambe. Mais voici le code responsable du dessin

J'ai passé toute la journée à l'analyser, mais rien n'en est sorti. J'ai simplifié au maximum le code et créé une branche. Aidez-moi !
Загадочный биржевой индикатор
Загадочный биржевой индикатор
  • www.mql5.com
Ниже приведен сильно упрощенный (ООП полностью отсутствует) индикатор, который показывает проторгованный оборот на основании тиковой биржевой истор...
 
fxsaber:



Dans la deuxième image, après le nom de l'indicateur court LastData, il n'y a pas de dernières données calculées. Alors qu'elle est sur la première image 244 -363 et sur la troisième 247 -409

Cela suggère que l'indicateur n'est pas calculé actuellement. Il est en cours de calcul et les données ne sont pas prêtes. Je vous rappelle que les indicateurs sont calculés dans un thread séparé, et non dans le thread principal de l'application, qui est responsable, entre autres, du rendu. Les indicateurs sont calculés pour chaque tick entrant sans exception.

Lorsque vous déplacez un graphique à l'aide d'une souris, vous absorbez des ressources informatiques pour traiter les messages du système provenant de la souris (ouvrez le gestionnaire des tâches et voyez comment le pourcentage de processeur augmente, en fonction de l'intensité du mouvement de la souris). Et votre indicateur n'a pas eu le temps de se recalculer. C'est pourquoi le deuxième graphique est vide.

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
Slawa:

Dans la deuxième image, après le nom de l'indicateur court LastData, il n'y a pas de dernières données calculées. Alors qu'elle est sur la première image 244 -363 et sur la troisième 247 -409

Cela suggère que l'indicateur n'est pas calculé actuellement. Il est en cours de calcul et les données ne sont pas prêtes. Je vous rappelle que les indicateurs sont calculés dans un thread séparé, et non dans le thread principal de l'application, qui est responsable, entre autres, du rendu. Les indicateurs sont calculés pour chaque tick entrant sans exception.

Lorsque vous déplacez un graphique à l'aide d'une souris, vous absorbez des ressources informatiques pour traiter les messages du système provenant de la souris (ouvrez le gestionnaire des tâches et voyez comment le pourcentage de processeur augmente, en fonction de l'intensité du mouvement de la souris). Et votre indicateur n'a pas eu le temps de se recalculer. C'est pourquoi le deuxième graphique est vide.

C'est beaucoup plus cool que ça, malheureusement. L'indicateur est entièrement fixé. Lien vers la branche avec les détails ci-dessus.