Библиотеки: Класс CComment - страница 2

 
Здравствуйте,

Я использую бесплатно скачанную библиотеку 'CComment Class' от 'avoitenko' для MetaTrader 5 в MQL5 Code Base, 2015.10.12 для удобного отображения некоторой информации.

У меня с ней две проблемы.

1) Панель не находится в самом первом фронте графика, некоторые линии лежат выше - почему это так и есть ли способ изменить это таким образом, чтобы панель комментариев всегда находилась впереди?



2) Как вы можете видеть в моем примере кода, некоторые тексты должны иметь разные цвета, но fontcolor всегда один и тот же, и я не знаю, что я делаю неправильно?
//Для настроек комментариев
#define  COLOR_BACK      clrBlack
#define  COLOR_BORDER    clrDimGray
#define  COLOR_CAPTION   clrDodgerBlue
#define  COLOR_TEXT      clrRed
#define  COLOR_WIN       clrLimeGreen
#define  COLOR_LOSS      clrOrangeRed

//OnInit() i do
 //panel Setting
   int y=30;
   if(ChartGetInteger(0,CHART_SHOW_ONE_CLICK))
      y=120;
   //--- название панели
   srand(GetTickCount());
   string name="panel_"+IntegerToString(rand());
   comment.Create(name,20,y);
   //--- стиль панели
   comment.SetAutoColors(InpAutoColors);
   comment.SetColor(clrBlue,clrYellow,255);
   comment.SetFont("Lucida Console",13,false,1.7);
   //---
   //comment.SetText(0,StringFormat("Expert: %s v.%s", "MYNAME", "My_version"),COLOR_CAPTION);
   comment.SetText(0,"ANALYZER - Report (max poss. profit/loss)",COLOR_CAPTION);
   comment.SetText(1,"wait for datas....",clrWhite);
     
   comment.SetText(21,"coming soon...",clrWhite);
   comment.SetText(22,"Profitfaktor: XY - Tendenz +/-",clrWhite);
   comment.SetText(23,"Качество входного сигнала: XY VS wie nah am Tief/Hoch/Wendepunkt",clrWhite);
   comment.SetText(24,"Качественный выходной сигнал: XY VS max-possible",clrWhite);
   comment.SetText(25,"Sonstiges: Формирование, свечи, унтершютцунгслиниен, поворотные точки...",clrWhite);
   comment.Show();


//ontick i do for example this to change/update line 17
string test1="my content";
comment_class_update(17,test1+" Text...",COLOR_TEXT);

//Текст будет обновлен, но не в заданном цвете - в данном случае он должен быть красным...



Arpit T #:
m_name=NULL; m_font_name="Lucida Console";m_font_size=14; m_font_bold=false; m_font_interval=1.7; m_border_color=clrNONE; m_back_color=clrBlack; m_back_alpha=255; // посмотрите на это m_graph_mode=true; m_auto_colors=false; m_chart_back_color=(color)ChartGetInteger(0,CHART_COLOR_BACKGROUND); // посмотрите на это m_auto_back_color=clrBlack;m_auto_border_color=clrNONE; //--- ChartSetInteger(0,CHART_EVENT_MOUSE_MOVE,true);

Привет,

это моя часть, кажется, все в порядке?

void  CComment(void)
     {
      m_name=NULL;
      m_font_name="Lucida Console";
      m_font_size=14;
      m_font_bold=false;
      m_font_interval=1.7;
      m_border_color=clrAzure;
      m_back_color=clrBlack;
      m_back_alpha=255;
      m_graph_mode=true;
      m_auto_colors=false;
      m_chart_back_color=(color)ChartGetInteger(0,CHART_COLOR_BACKGROUND);
      m_auto_back_color=clrLightYellow;
      m_auto_border_color=clrYellow;
      //---
      ChartSetInteger(0,CHART_EVENT_MOUSE_MOVE,true);
      
      
      
     };

Автор больше не поддерживает этот класс, поэтому я пользуюсь форумом. Может есть какой-нибудь класс, который я могу использовать, но я не могу найти ни одного...?

[Удален]  

Проанализируйте функции класса, например

  void  CComment(void)
     {
      m_name=NULL;
      m_font_name="Lucida Console";
      m_font_size=14;
      m_font_bold=false;
      m_font_interval=1.7;
      m_border_color=clrNONE;
      m_back_color=clrBlack;
      m_back_alpha=255; // look at this
      m_graph_mode=true;
      m_auto_colors=false;
      m_chart_back_color=(color)ChartGetInteger(0,CHART_COLOR_BACKGROUND); // look at this
      m_auto_back_color=clrBlack;
      m_auto_border_color=clrNONE;
      //---
      ChartSetInteger(0,CHART_EVENT_MOUSE_MOVE,true);
     };

Если вы опубликуете этот вопрос на странице кодовой базы "Comment Class", он привлечет внимание автора, и вы сможете получить более качественные ответы.



ReLor2 #:

Привет,

это моя часть, кажется нормально?

Автор больше не поддерживает этот класс, поэтому я пользуюсь форумом. Может есть какой-нибудь класс, который я могу использовать, но я не могу найти ни одного...?

Пожалуйста, прочитайте эту статью, она намного лучше, чем класс CComment.

https://www.mql5.com/ru/articles/13179

Making a dashboard to display data in indicators and EAs
Making a dashboard to display data in indicators and EAs
  • www.mql5.com
In this article, we will create a dashboard class to be used in indicators and EAs. This is an introductory article in a small series of articles with templates for including and using standard indicators in Expert Advisors. I will start by creating a panel similar to the MetaTrader 5 data window.
 
Отличный и очень легкий. Спасибо!