Gallery of UIs written in MQL - page 13

 
Aleksey Vyazmikin #:

Very generous. Much will depend not on functionality, but on explanations inside the code (preferably in Russian), as well as examples of different panels are required - it makes it much easier to understand the code.

Examples of markup code will be more than enough.

In addition to the markup language you need to master only the connection of controls to their functionality inside the file Internal API.mqh. This is a task of a day.

The constructor generates EVERYTHING. You only connect it.
 
...However, not even a day, but rather an hour.
 
I should add that you do not need to write any MQL code to create your GUI at all. I emphasise this because I was asked this all the time. People could not believe that it is not necessary to program the interface. That's why there was a lot of confusion.
 
Often asked where are my libraries and how to connect everything without OOP.... I'm tired of explaining that everything is already solved. All connection functions are generated automatically. You just call them where you need them in YOUR code. Such simplicity...
 
Реter Konow #:
Often asked where are my libraries and how to connect everything without OOP.... I'm tired of explaining that everything is already solved. All connection functions are generated automatically. You just call them where you need them in YOUR code. Such simplicity...

We are waiting for the presentation :) The audience is warmed up :))))

 

Prepare your EAs/indicators for the transition to a graphical interface. Think about the content and design of the interface (so you don't waste time).

I will soon post the constructor, interpreter and engine.

I will provide installation instructions, provide examples of markups and setting element properties.

I will provide explanations of connectivity.

The language is simple and does not take long to master. If the learning curve was complicated, I would not take it on.

Take advantage of the last opportunity.

P.S..

Later I will post a list of controls and windows that the first release will support.

Some things (like tree list and dynamic window) will be disabled.

If public interest is high, I'll post them later.

 
ТИПЫ ЭЛЕМЕНТОВ:

//-------------------------------------------------------------
 M_ITEM    

     ИНТЕРАКТИВНЫЙ ЭЛЕМЕНТ ОКОН КОНТЕКСТНОГО МЕНЮ.                                 
//-------------------------------------------------------------


M_SEP

     РАЗДЕЛИТЕЛЬ ПУНКТОВ МЕНЮ. СТАВИТСЯ МЕЖДУ НИМИ В ГРУППЕ.                                   //-------------------------------------------------------------

CHECKBOX

ОБЫЧНЫЙ ЧЕКБОКС.                                   //-------------------------------------------------------------

R_BUTTON

  ОБЫЧНАЯ РАДИО-КНОПКА. СЛУЖИТ ДЛЯ ПЕРЕКЛЮЧЕНИЯ МЕЖДУ НЕСКОЛЬКИМИ ОПЦИЯМИ.                                  //-------------------------------------------------------------

S_EDIT

    ПОЛЕ ВВОДА С КНОПКАМИ. СЛУЖИТ ДЛЯ ПЕРЕКЛЮЧЕНИЯ ЗНАЧЕНИЙ.                                   //-------------------------------------------------------------

D_LIST

    ВЫПАДАЮЩИЙ СПИСОК С ПУНКТАМИ И ПОЛЕМ ВВОДА. СЛУЖИТ ДЛЯ ВЫБОРА ИЛИ ВВОДА НУЖНОЙ ОПЦИИ.                                  //-------------------------------------------------------------

C_LIST

    ВЫПАДАЮЩИЙ СПИСОК БЕЗ БЕЗ ПОЛЯ ВВОДА. СЛУЖИТ ДЛЯ ВЫБОРА ПРЕДОПРЕДЕЛЕННЫХ ОПЦИЙ.                                     //-------------------------------------------------------------

G_FRAME

   РАМКА ДЛЯ ОБОСОБЛЕНИЯ ГРУППЫ ЭЛЕМЕНТОВ ВНУТРИ ОКНА. ИМЕЕТ ЗАДАВАЕМОЕ НАЗВАНИЕ И ПРАВИЛА ПОЗИЦИОНИРОВАНИЯ.                                 //-------------------------------------------------------------

H_SEP

     ГОРИЗОНТАЛЬНАЯ РАЗДЕЛИТЕЛЬНАЯ ЛИНИЯ. ДЛИННА, ТОЛЩИНА, ЦВЕТ ЗАДАЮТСЯ.                                   //-------------------------------------------------------------

V_SEP

     ВЕРТИКАЛЬНАЯ РАЗДЕЛИТЕЛЬНАЯ ЛИНИЯ. ДЛИННА, ТОЛЩИНА, ЦВЕТ ЗАДАЮТСЯ.                                  //-------------------------------------------------------------

BUTTON

    ОБЫЧНАЯ КНОПКА. РАЗМЕРЫ, ЦВЕТ, ИКОНКА ЗАДАЮТСЯ.                                     //-------------------------------------------------------------

TB_BUTTON

ТИП КНОПКИ. ИНТЕРАКТИВНАЯ КНОПКА. ПРИЛИПАЕТ К КУРСОРУ. МОЖЕТ ИМЕТЬ ТЕКСТ И ИКОНКУ ЕСЛИ УКАЗАНО.   //-------------------------------------------------------------

D_BUTTON

  КНОПКА ДЛЯ ДИАЛОГОВЫХ ОКОН - НАПРИМЕР: ДА, НЕТ, ОТМЕНА...                                   //-------------------------------------------------------------

I_BUTTON

  ЕЩЕ ОДИН ТИП КНОПКИ.   ИМЕЕТ ТЕКСТ И ИКОНКУ.                                 //-------------------------------------------------------------

SQ_BUTTON

  ТОЖЕ ТИП КНОПКИ.   //-------------------------------------------------------------

EDIT

      ОБЫЧНОЕ ПОЛЕ ВВОДА ДЛЯ ВВОДА/ВЫВОДА ТЕКСТОВ ИЛИ ЗНАЧЕНИЙ.                                   //-------------------------------------------------------------

V_BOX

     КАНВАС С ПРОКРУТКОЙ - НЕСЕТ ЛЮБЫЕ ГРУППЫ ЭЛЕМЕНТОВ ИЛИ ТЕКСТ. НА ЭЛЕМЕНТЕ МОГУТ УСТАНАВЛИВАТЬСЯ ВКЛАДКИ ЯВЛЯЮЩИЕ ОБОСОБЛЕННЫЕ ГРУППЫ ЭЛЕМЕНТОВ.                                 //-------------------------------------------------------------

H_SLIDER

  ГОРИЗОНТАЛЬНЫЙ СЛАЙДЕР. МОЖНО ВКЛЮЧАТЬ/ОТКЛЮЧАТЬ ТАБЛО С ЦИФРАМИ И ДРУГУЮ ИНТЕРАКТИВНОСТЬ.                                     //-------------------------------------------------------------

V_SLIDER

  ВЕРТИКАЛЬНЫЙ СЛАЙДЕР. ТОЖЕ САМОЕ ЧТО И ГОРИЗОНТАЛЬНЫЙ.                                 //-------------------------------------------------------------

T_HEADER

  ЗАГОЛОВОЧНАЯ ЯЧЕЙКА ЛЮБЫХ ТАБЛИЦ. ИСПОЛЬЗУЕТСЯ ТОЛЬКО В ТАБЛИЦАХ.                                   //-------------------------------------------------------------

R_HEADER

  ЗАГОЛОВОЧНАЯ ЯЧЕЙКА РЯДОВ ТАБЛИЦ. ИСПОЛЬЗУЕТСЯ ТОЛЬКО В ТАБЛИЦАХ.                                 //-------------------------------------------------------------

C_HEADER

  ЗАГОЛОВОЧНАЯ ЯЧЕЙКА КОЛОНОК ТАБЛИЦ. ИСПОЛЬЗУЕТСЯ ТОЛЬКО В ТАБЛИЦАХ.                                   //-------------------------------------------------------------

CELL

      ОБЫКНОВЕННАЯ ЯЧЕЙКА ТАБЛИЦЫ. МОЖЕТ ИМЕТЬ ТЕКСТ И ИКОНКУ. МОЖЕТ ИСПОЛЬЗОВАТЬСЯ ВНЕ ТАБЛИЦ. НАПРИМЕР В СПИСКАХ.  ИНТЕРАКТИВНАЯ ПО ЖЕЛАНИЮ ПОЛЬЗОВАТЕЛЯ.                                  //-------------------------------------------------------------

P_BAR

     ОБЫКНОВЕННЫЙ ПРОГРЕСС-БАР. ПОКАЗЫВАЕТ СТАТУС ЗАВЕРШЕНИЯ ПРОЦЕССА.                                     //-------------------------------------------------------------

FRAME

    ОБЫКНОВЕННАЯ ПРЯМОУГОЛЬНАЯ РАМКА ДЛЯ ВЫДЕЛЕНИЯ ГРУПП ЭЛЕМЕНТОВ.                                     //-------------------------------------------------------------

H_TAB

    ГОРИЗОНТАЛЬНАЯ ВКЛАДКА. ЯВЛЯЕТ/ПРЯЧЕТ ГРУППЫ ЭЛЕМЕНТОВ ПРИ НАЖАТИИ.                                     //-------------------------------------------------------------

V_TAB

    ВЕРТИКАЛЬНАЯ ВКЛАДКА. ЯВЛЯЕТ/ПРЯЧЕТ ГРУППЫ ЭЛЕМЕНТОВ ПРИ НАЖАТИИ.                                     //-------------------------------------------------------------

H_LINE

   ОБЫКНОВЕННАЯ ГОРИЗОНТАЛЬНАЯ ЛИНИЯ. РАЗМЕРЫ И ЦВЕТ ЗАДАЕТ ПОЛЬЗОВАТЕЛЬ.                                     //-------------------------------------------------------------

V_LINE

   ОБЫКНОВЕННАЯ ВЕРТИКАЛЬНАЯ ЛИНИЯ. РАЗМЕРЫ И ЦВЕТ ЗАДАЕТ ПОЛЬЗОВАТЕЛЬ.                                  //-------------------------------------------------------------

LABEL

    ОБЫКНОВЕННАЯ ИКОНКА. МОЖЕТ ИСПОЛЬЗОВАТЬСЯ САМА ПО СЕБЕ, ВНЕ ЭЛЕМЕНТА. ЕСТЬ ВЫБОР ВСТРОЕННЫХ ИКОНОК И СПОСОБ ИХ НАЗНАЧЕНИЯ.                                    //-------------------------------------------------------------

REC

      ПРЯМОУГОЛЬНИК. БЕЛЫЙ ПО УМОЛЧАНИЮ. РАЗМЕРЫ И ЦВЕТ ЗАДАЮТСЯ ПОЛЬЗОВАТЕЛЕМ. МОЖЕТ БЫТЬ ИНТЕРАКТИВНЫМ (РЕАГИРОВАТЬ НА НАЖАТИЕ ИЛИ КУРСОР И МЕНЯТЬ ЦВЕТ.)                                    //-------------------------------------------------------------

M_TAB

    ИНТЕРАКТИВНАЯ ВКЛАДКА ГРУППЫ КОНТЕКСТНЫХ МЕНЮ В ШАПКЕ ГЛАВНОГО ОКНА. ОТКРЫВАЕТ ОКНО МЕНЮ.                                     //-------------------------------------------------------------

TIP

      ВСПЛЫВАЮЩАЯ ПРИ НАВЕДЕНИИ ПОДСКАЗКА. ТЕКСТ ЗАДАЕТ ПОЛЬЗОВАТЕЛЬ.                                 //-------------------------------------------------------------

L_ITEM

   ИНТЕРАКТИВНЫЙ ПУНКТ ВЫПАДАЮЩЕГО ИЛИ ОБЫЧНОГО ПРОКРУЧИВАЕМОГО СПИСКА.                                     //-------------------------------------------------------------

BOARD

    ОБЫКНОВЕННАЯ ТЕКСТОВАЯ МЕТКА НА ПРЯМОУГОЛЬНИКЕ. ТЕКСТ, ЦВЕТ, РАЗМЕР, СТИЛЬ, ШРИФТ И ПР. ЗАДАЕТ ПОЛЬЗОВАТЕЛЬ.    МОЖЕТ БЫТЬ ИНТЕРАКТИВНОЙ - МЕНЯТЬ ЦВЕТ ОСНОВАНИЯ ИЛИ ТЕКСТА И РЕАГИРОВАТЬ НА КУРСОР ИЛИ НАЖАТИЕ.                                                            //-------------------------------------------------------------                                  

T_CELL

    ЯЧЕЙКА ТАБЛИЦЫ С ПРЕДОПРЕДЕЛЕННЫМ И НЕИЗМЕННЫМ ТЕКСТОМ УСТАНАВЛИВАЕМЫМ ПОЛЬЗОВАТЕЛЕМ.   ИСПОЛЬЗУЕТСЯ В ТАБЛИЦАХ СО СТАТИЧНЫМИ ЗНАЧЕНИЯМИ.                                   //-------------------------------------------------------------

M_CHECKBOX

ИНТЕРАКТИВНЫЙ ЧЕКБОКС ДЛЯ ОКНА МЕНЮ.                                   //-------------------------------------------------------------

TV_ITEM

   ИНТЕРАКТИВНЫЙ ПУНКТ ДРЕВОВИДНОГО СПИСКА.                                   //-------------------------------------------------------------

TV_MENU

   ЭЛЕМЕНТ МЕНЮ ДРЕВОВИДНОГО СПИСКА.                                   //-------------------------------------------------------------

T_FOLDER

  СВОРАЧИВАТЕЛЬ ТАБЛИЦ.  УСТАНАВЛИВАЕТСЯ ВНУТРИ ТАБЛИЦ ДЛЯ СВОРАЧИВАНИЯ ИХ РЯДОВ.                                   //-------------------------------------------------------------

G_FOLDER

  СВОРАЧИВАТЕЛЬ ГРУПП ЭЛЕМЕНТОВ. УСТАНАВЛИВАЕТСЯ ДЛЯ СВОРАЧИВАНИЯ ЧАСТИ ОКНА.                                //-------------------------------------------------------------

I_TEXT

    ИНТЕРАКТИВНЫЙ ЭЛЕМЕНТ МНОГОСТРОЧНЫХ СПИСКОВ. НЕСЕТ ТЕКСТ, МОЖЕТ ВЫЗЫВАТЬ ОКНО ИЛИ ФУНКЦИЮ.                                  //-------------------------------------------------------------

T_BOX

     МНОГОСТРОЧНЫЙ ТЕКСТОВЫЙ БЛОК. МОЖЕТ БЫТЬ ИНТЕРАКТИВНЫМ.                               //-------------------------------------------------------------

VALUE

     ТЕКСТОВАЯ МЕТКА ПЕРЕДАЮЩАЯ ЗНАЧЕНИЕ ПАРАМЕТРА ПОЛЬЗОВАТЕЛЯ ИЗ ЕГО ПРИЛОЖЕНИЯ. ЦВЕТ, РАЗМЕР, СТИЛЬ, ШРИФТ ЗАДАЮТСЯ ПОЛЬЗОВАТЕЛЕМ. МОЖЕТ БЫТЬ ИНТЕРАКТИВНА.                              //-------------------------------------------------------------

D_BAR

    ВЕРТИКАЛЬНЫЙ ПРОГРЕСС-БАР. ИСПОЛЬЗУЕТСЯ В ДИАГРАММАХ.                                         //-------------------------------------------------------------

ОКНА

SETTINGS

ОКНО НАСТРОЕК. ИСПОЛЬЗУЕТСЯ ДЛЯ ОБЫЧНЫХ ЭЛЕМЕНТОВ, ТАБЛИЦ, СПИСКОВ.

//-------------------------------------------------------------------

DIALOG ДИАЛОГОВОЕ ОКНО. ВЫЗЫВАЕТСЯ ДЛЯ СООБЩЕНИЯ ИНФОРМАЦИИ ИЛИ ПОЛУЧЕНИЯ ОТВЕТА ОТ ПОЛЬЗОВАТЕЛЯ. //------------------------------------------------------------------

CONTEXT_MENU

ВЫПАДАЮЩЕЕ КОНТЕКСТНОЕ МЕНЮ. ДЛЯ ВЫЗОВА ОКОН ИЛИ ФУНКЦИЙ. //-------------------------------------------------------------------



IMPORTANT!!!

ALMOST ALL INTERACTIVE ELEMENTS ARE AUTOMATICALLY EMBEDDED IN TABLES!!!!

i.e. Sliders, progress bars, checkboxes, radio buttons, drop-down lists, input fields and others.

 
I'll provide simple examples of markup code tomorrow.
 

Did a great job of manning the builder and engine. Soon (in the next few days) will be ready.

I will post the tutorials in the morning.

 

Anything once started has to be finished. Even if nobody needs it. That's the principle.

And so, tutorials...

I publish them before the release, so that at the time of the release the readers have a general idea of the markup language.