Galleria di interfacce utente scritte in MQL - pagina 13

 
Aleksey Vyazmikin #:

Molto generoso. Molto dipenderà non dalla funzionalità, ma dalle spiegazioni all'interno del codice (preferibilmente in russo), così come sono richiesti esempi di diversi pannelli - rende molto più facile la comprensione del codice.

Esempi di codice di markup saranno più che sufficienti.

Oltre al linguaggio di markup, è necessario padroneggiare solo la connessione dei controlli alle loro funzionalità all'interno del file Internal API.mqh. Questo è un compito di un giorno.

Il costruttore genera TUTTO. Voi dovete solo collegarlo.
 
...Tuttavia, nemmeno un giorno, ma piuttosto un'ora.
 
Aggiungo che non è necessario scrivere alcun codice MQL per creare l'interfaccia grafica. Lo sottolineo perché me lo chiedevano sempre. Le persone non riuscivano a credere che non fosse necessario programmare l'interfaccia. Ecco perché c'era molta confusione.
 
Spesso mi viene chiesto dove sono le mie librerie e come collegare tutto senza OOP.... Sono stanco di spiegare che tutto è già risolto. Tutte le funzioni di connessione sono generate automaticamente. Basta chiamarle dove servono nel VOSTRO codice. Che semplicità...
 
Реter Konow #:
Spesso mi viene chiesto dove sono le mie librerie e come collegare tutto senza OOP.... Sono stanco di spiegare che tutto è già risolto. Tutte le funzioni di connessione sono generate automaticamente. Basta chiamarle dove servono nel VOSTRO codice. Che semplicità...

Aspettiamo la presentazione :) Il pubblico si è scaldato :))))

 

Preparate i vostri EA/indicatori per il passaggio a un'interfaccia grafica. Pensate al contenuto e al design dell'interfaccia (per non perdere tempo).

Presto pubblicherò il costruttore, l'interprete e il motore.

Fornirò istruzioni per l'installazione, esempi di markup e di impostazione delle proprietà degli elementi.

Fornirò spiegazioni sulla connettività.

Il linguaggio è semplice e non richiede molto tempo per essere padroneggiato. Se la curva di apprendimento fosse stata complicata, non l'avrei accettato.

Approfittate dell'ultima opportunità.

P.S..

Più tardi pubblicherò un elenco di controlli e finestre che la prima versione supporterà.

Alcune cose (come l'elenco ad albero e la finestra dinamica) saranno disabilitate.

Se l'interesse del pubblico è alto, li pubblicherò più tardi.

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

//-------------------------------------------------------------
 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

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



IMPORTANTE!!!

QUASI TUTTI GLI ELEMENTI INTERATTIVI SONO INCORPORATI AUTOMATICAMENTE IN TABLES!!!!

ad esempio, cursori, barre di avanzamento, caselle di controllo, pulsanti di opzione, elenchi a discesa, campi di input e altri.

 
Domani fornirò semplici esempi di codice di markup.
 

Ha fatto un ottimo lavoro di gestione del costruttore e del motore. Presto (nei prossimi giorni) sarà pronto.

Posterò i tutorial domattina.

 

Qualsiasi cosa, una volta iniziata, deve essere portata a termine. Anche se non serve a nessuno. Questo è il principio.

E così, i tutorial...

Li pubblico prima del rilascio, in modo che al momento del rilascio i lettori abbiano un'idea generale del linguaggio di markup.