Logo

Вход

Войти с помощью соц. сетей
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения
ТОП СООБЩЕНИЙ
12.02.2017, 15:37
Лучший ответ
Накопленные выплаты: 182654 RUB
Сообщение от kofesutra Посмотреть сообщение
Подскажите, как можно сделать в коде советника простейшую инфопанель
Это вам нужно прямиком в цикл статей "Графические интерфейсы".
12.02.2017, 16:55
Лучший ответ
Накопленные выплаты: 29906 RUB
Сообщение от ir0407 Посмотреть сообщение
Это вам нужно прямиком в цикл статей "Графические интерфейсы".
Игорь, ты что угарел над человеком!
Там такой объём информации, да ещё в ООП! Человек попросил простейшую панель! Её можно создать просто из прямоугольной метки OBJ_RECTANGLE_LABEL и поверх неё выводить OBJ_TEXT или OBJ_LABEL!
А ты сразу в Графические интерфейсы, там слишком много наворотов для такой простой просьбы!
12.02.2017, 17:03
Лучший ответ
Накопленные выплаты: 182654 RUB
Сообщение от Viktor1987 Посмотреть сообщение
Игорь, ты что угарел над человеком!
Ну это же MQL5, а не 4... Там все таки желательно все делать на ООП, он под это заточен.

Сообщение от Viktor1987 Посмотреть сообщение
там слишком много наворотов для такой простой просьбы!
За-то и выбор больше... Хош простое, а хош с наворотами. И телодвижений меньше нужно.
12.02.2017, 19:03
Лучший ответ
Накопленные выплаты: 29906 RUB
Сообщение от ir0407 Посмотреть сообщение
И телодвижений меньше нужно.
А вот тут я категорически не согласен! Функционал конечно просто ЗВЕРЮГА! А вот покорпеть над пониманием как работает эта библиотека, точно придётся не одну неделю, особенно если все статьи читать!
13.02.2017, 12:42
Лучший ответ
Накопленные выплаты: 780 RUB
Сообщение от Viktor1987 Посмотреть сообщение
Игорь, ты что угарел над человеком!
Там такой объём информации, да ещё в ООП! Человек попросил простейшую панель! Её можно создать просто из прямоугольной метки OBJ_RECTANGLE_LABEL и поверх неё выводить OBJ_TEXT или OBJ_LABEL!
Виктор, спасибо за наводку - всё удалось сделать!
13.02.2017, 12:45
Лучший ответ
Накопленные выплаты: 29906 RUB
Сообщение от kofesutra Посмотреть сообщение
Виктор, спасибо за наводку - всё удалось сделать!
Да не за что!
Плюсик в репу и кнопочка "Спасибо" - будет при достаточно!
  • #1 Свернуть

    MQL5 Простая инфо панель - как?

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

    Такое дело: я при тестировании советников использую выводы Comment через функцию Comments() куда подставляю самые разные значения, которые нужно отследить.

    Но выглядит это всё на экране плохо читаемо

    Подскажите, как можно сделать в коде советника простейшую инфопанель в виде прямоугольника с фоном и в него выводить значения из функции Comments()?

    Код:
    void fComment()
    
      {
    
     Comment(
    
               "Сделка: "+DirString+"\n"+ 
    
    	  "Направление тренда: "+TrendString+"\n"+ 
    
    	(string)fWorkTime() 
    
    // и прочие, которые меняются в зависимости от цели тестирования 
    
     }
  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
  • #2 Свернуть

    Сообщение от kofesutra Посмотреть сообщение
    Подскажите, как можно сделать в коде советника простейшую инфопанель
    Это вам нужно прямиком в цикл статей "Графические интерфейсы".

    Комментарий

    • #3 Свернуть

      Сообщение от ir0407 Посмотреть сообщение
      Это вам нужно прямиком в цикл статей "Графические интерфейсы".
      Игорь, ты что угарел над человеком!
      Там такой объём информации, да ещё в ООП! Человек попросил простейшую панель! Её можно создать просто из прямоугольной метки OBJ_RECTANGLE_LABEL и поверх неё выводить OBJ_TEXT или OBJ_LABEL!
      А ты сразу в Графические интерфейсы, там слишком много наворотов для такой простой просьбы!
      "Правила рынка" (с)

      Комментарий

      • #4 Свернуть

        Сообщение от Viktor1987 Посмотреть сообщение
        Игорь, ты что угарел над человеком!
        Ну это же MQL5, а не 4... Там все таки желательно все делать на ООП, он под это заточен.

        Сообщение от Viktor1987 Посмотреть сообщение
        там слишком много наворотов для такой простой просьбы!
        За-то и выбор больше... Хош простое, а хош с наворотами. И телодвижений меньше нужно.

        Комментарий

        • #5 Свернуть

          Сообщение от ir0407 Посмотреть сообщение
          И телодвижений меньше нужно.
          А вот тут я категорически не согласен! Функционал конечно просто ЗВЕРЮГА! А вот покорпеть над пониманием как работает эта библиотека, точно придётся не одну неделю, особенно если все статьи читать!
          "Правила рынка" (с)

          Комментарий

          • #6 Свернуть

            Сообщение от Viktor1987 Посмотреть сообщение
            Игорь, ты что угарел над человеком!
            Там такой объём информации, да ещё в ООП! Человек попросил простейшую панель! Её можно создать просто из прямоугольной метки OBJ_RECTANGLE_LABEL и поверх неё выводить OBJ_TEXT или OBJ_LABEL!
            Виктор, спасибо за наводку - всё удалось сделать!

            Комментарий

            • #7 Свернуть

              Сообщение от kofesutra Посмотреть сообщение
              Виктор, спасибо за наводку - всё удалось сделать!
              Да не за что!
              Плюсик в репу и кнопочка "Спасибо" - будет при достаточно!
              "Правила рынка" (с)

              Комментарий

              • #8 Свернуть

                Здравствуйте все!
                Я к Вам с продолжением вопроса и новой просьбой:
                подскажите, пожалуйста, как сделать прямоугольник с прозрачностью (например 70%)? Хочется видеть график в случае когда он попадает под прямоугольник.
                Сейчас создаётся так:
                MQL код:
                ObjectCreate(0,"Fon",OBJ_RECTANGLE_LABEL,0,0,0)) 
                ObjectSetInteger(0, "Fon", OBJPROP_CORNER, 0); // угол
                ObjectSetInteger(0, "Fon", OBJPROP_XDISTANCE, 40); // X
                ObjectSetInteger(0, "Fon", OBJPROP_YDISTANCE, 21); // Y
                ObjectSetInteger(0, "Fon", OBJPROP_XSIZE, 170); // ширина
                ObjectSetInteger(0, "Fon", OBJPROP_YSIZE, 190); // высота
                ObjectSetInteger(0, "Fon", OBJPROP_BGCOLOR, Silver); // цвет

                Комментарий

                • #9 Свернуть

                  Сообщение от kofesutra Посмотреть сообщение
                  Хочется видеть график в случае когда он попадает под прямоугольник.
                  Как вариант попробуй поиграться со свойством OBJPROP_BACK.

                  Комментарий

                  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
                  • #10 Свернуть

                    Сообщение от ir0407 Посмотреть сообщение
                    Как вариант попробуй поиграться со свойством OBJPROP_BACK
                    Спасибо за ответ! Но, к сожалению, не то.
                    Зато вот сделал с помощью специалиста на офсайте mql5:

                    цвет и прозрачность подберу попозже, главное - работает!

                    Вот код для моего прямоугольника:
                    MQL код:
                    #include <Canvas\Canvas.mqh>
                    CCanvas m_canvas;

                    //+------------------------------------------------------------------+
                    //| Создаём панель
                    //+------------------------------------------------------------------+
                    bool fCreatePanel()

                    {
                    //--- сбросим значение ошибки
                    ResetLastError();

                    //--- Панель с прозрачностью ---
                    /*
                    bool CreateBitmapLabel(
                    const string name, // имя
                    const int x, // координата X
                    const int y, // координата Y
                    const int width, // ширина
                    const int height, // высота
                    ENUM_COLOR_FORMAT clrfmt=COLOR_FORMAT_XRGB_NOALPHA // формат
                    );
                    */
                    if(!m_canvas.CreateBitmapLabel("Alpha_Fon",40,21,1 70,190,COLOR_FORMAT_ARGB_NORMALIZE))
                    {
                    Print("Error creating canvas: ",GetLastError());
                    return(false);
                    }

                    m_canvas.Erase(ColorToARGB(clrSilver,220)); // (цвет панели, прозрачность)
                    m_canvas.Update();
                    Последний раз редактировалось kofesutra; 05.05.2017, 19:11.

                    Комментарий

                    X