Galerie d'interfaces utilisateur écrites en MQL - page 13

 
Aleksey Vyazmikin #:

Très généreux. Beaucoup dépendra non pas de la fonctionnalité, mais des explications à l'intérieur du code (de préférence en russe), ainsi que des exemples des différents panneaux requis - cela facilite grandement la compréhension du code.

Des exemples de code de balisage seront plus que suffisants.

Outre le langage de balisage, vous devez maîtriser la connexion des contrôles à leur fonctionnalité dans le fichier Internal API.mqh. Il s'agit d'une tâche d'une journée.

Le constructeur génère TOUT. Vous n'avez qu'à le connecter.
 
...Pourtant, ce n'est pas un jour, mais une heure.
 
Je dois ajouter que vous n'avez pas besoin d'écrire de code MQL pour créer votre interface graphique. J'insiste sur ce point parce qu'on m'a souvent posé cette question. Les gens ne pouvaient pas croire qu'il n'était pas nécessaire de programmer l'interface. C'est pourquoi il y a eu beaucoup de confusion.
 
On me demande souvent où sont mes bibliothèques et comment tout connecter sans OOP.... Je suis fatigué d'expliquer que tout est déjà résolu. Toutes les fonctions de connexion sont générées automatiquement. Vous n'avez qu'à les appeler là où vous en avez besoin dans VOTRE code. Une telle simplicité...
 
Реter Konow #:
On me demande souvent où sont mes bibliothèques et comment tout connecter sans OOP.... Je suis fatigué d'expliquer que tout est déjà résolu. Toutes les fonctions de connexion sont générées automatiquement. Vous n'avez qu'à les appeler là où vous en avez besoin dans VOTRE code. Quelle simplicité...

Nous attendons la présentation :) L'auditoire s'échauffe :))))

 

Préparez vos AE/indicateurs à la transition vers une interface graphique. Réfléchissez au contenu et à la conception de l'interface (pour ne pas perdre de temps).

Je publierai bientôt le constructeur, l'interpréteur et le moteur.

Je fournirai des instructions d'installation, des exemples de balisage et de définition des propriétés des éléments.

Je fournirai des explications sur la connectivité.

Le langage est simple et ne prend pas beaucoup de temps à maîtriser. Si la courbe d'apprentissage était compliquée, je ne l'accepterais pas.

Profitez de la dernière occasion qui s'offre à vous.

P.S..

Plus tard, je publierai une liste des contrôles et des fenêtres que la première version prendra en charge.

Certaines choses (comme la liste des arbres et la fenêtre dynamique) seront désactivées.

Si l'intérêt du public est élevé, je les publierai plus tard.

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

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

PRESQUE TOUS LES ÉLÉMENTS INTERACTIFS SONT AUTOMATIQUEMENT INTÉGRÉS DANS LES TABLES !!!!

c'est-à-dire les curseurs, les barres de progression, les cases à cocher, les boutons radio, les listes déroulantes, les champs de saisie et autres.

 
Je fournirai demain des exemples simples de code de balisage.
 

Il a fait un excellent travail en s'occupant du constructeur et du moteur. Bientôt (dans les prochains jours) il sera prêt.

Je posterai les tutoriels dans la matinée.

 

Tout ce qui est commencé doit être terminé. Même si personne n'en a besoin. C'est le principe.

Et donc, les tutoriels...

Je les publie avant la publication, de sorte qu'au moment de la publication, les lecteurs aient une idée générale du langage de balisage.