Помогите, как отображать Comment(); на экране? - страница 2

 
P.S. Но чтобы совсем не мучаться удобно ставить несколько текстовых объектов в левый угол
 
Bpattern >>:
Помогите, как отображать Comment(); на экране, так, что бы писались одновременно несколько Comment c разными содержаниями?

Посмотрите Comment2. Возможно это то, что Вам нужно.

 
Bpattern >>:
Помогите, как отображать Comment(); на экране, так, что бы писались одновременно несколько Comment c разными содержаниями?
string Comments[3] = {"Первая строчка", "Вторая строчка", "Третья строчка"};
string Str = "";
int i;
  
for (i = 0; i < ArraySize(Comments); i++)
  Str = Str + Comments[i] + "\n";
    
Comment(Str);
 

дело было вечером, в общем набросал эту функцию многострочного коммента, Сии плэасе

P.S. Это скрипт с функцией

Файлы:
comment.mq4  2 kb
 
Вопрос уже рассматривался в этой ветке. https://forum.mql4.com/ru/9631
 

Если нужно вывести значение матрицы на экран, я использую вот такую функцию

//+------------------------------------------------------------------+
//| Функция преобразования матрицы в строку для вывода на экран      |
//+------------------------------------------------------------------+
string MatrixPrint(double array[][])
{
string sComment = "";
int m;  m=ArrayRange(array, 0); // количество строк
int n;  n=ArrayRange(array, 1); // количество столбцов
//----
   for( int j=0; j<m; j++)   {
      sComment = sComment+"\n";
      for(int i=0; i<n; i++) sComment = sComment+DoubleToStr(array[j,i],8)+ " ";
   }
   sComment = sComment+"\n";
//----
   return(sComment);
}
 

для вывода сразу нескольких матриц вызываю эту функцию вот так

   sM="";
   sM =sM+MatrixPrint(P);
   sM =sM+MatrixPrint(X);
   Comment(sM);
 
Korey >>:

..дело было вечером, в общем набросал эту функцию многострочного коммента, Сии плэасе..

Ну спасибо, Александр! Такая прикладистая вещь, прикрутил ко всему, до чего дотянулся.

 
Korey >>:

дело было вечером, в общем набросал эту функцию многострочного коммента, Сии плэасе

P.S. Это скрипт с функцией

Спасибо, вот это да ...... очень помогает 

Еще раз нечеловеческое спасибо

 

На городили господа, всё делается проще пример из учебника:

void OnTick()
  {
//---
   double Ask,Bid;
   int Spread;
   Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);
   Bid=SymbolInfoDouble(Symbol(),SYMBOL_BID);
   Spread=SymbolInfoInteger(Symbol(),SYMBOL_SPREAD);
//--- Выведем значения в три строчки
   Comment(StringFormat("Выводим цены\nAsk = %G\nBid = %G\nSpread = %d",Ask,Bid,Spread));
  }
 

У меня так:

  string txtOut = StringConcatenate("\n  Envelope Upper = ", DoubleToString(envUp0,_Digits),
                                    "\n  Envelope Lower = ", DoubleToString(envDn0,_Digits),
                                    "\n  Volumes = ", volume0
                                    );
  Comment(txtOut);
Причина обращения: