Новая статья: Рецепты MQL5 - Элементы управления в подокне индикатора - Полоса прокрутки

 

Опубликована статья Рецепты MQL5 - Элементы управления в подокне индикатора - Полоса прокрутки:

Продолжим изучение элементов управления и на этот раз рассмотрим полосу прокрутки (scrollbar). Так же, как и в предыдущей статье "Рецепты MQL5 - Элементы управления в подокне индикатора - Кнопки", будем работать в подокне индикатора. Упомянутую статью необходимо изучить, так как в ней подробно изложена работа с событиями в функции OnChartEvent(), а здесь о них будет только поверхностное упоминание. В этой статье в качестве примера мы создадим вертикальную полосу прокрутки для большого списка всех показателей финансового инструмента, которые возможно получить средствами MQL5.

В предыдущих статьях по программированию на MQL5 для построения списков мы использовали графический объект OBJ_LABEL (текстовая метка). Но на этот раз будем использовать "холст" ("канву" или canvas, кому как удобнее) для отображения текста на нем. Удобство такого подхода заключается в том, что вместо множества объектов OBJ_LABEL будет использоваться только один - OBJ_BITMAP_LABEL (графическая метка). На холсте можно рисовать любые элементы интерфейса, но в этот раз мы ограничимся только выводом текста.

Полосу прокрутки сделаем максимально простой. Обычно к ней приделывают кнопки со стрелками, но здесь они будут исключены. Прокрутка будет состоять только из фона и ползунка (scroll box или thumb). Ползунок при наведении на него курсора мыши будет менять свой цвет. При нажатии мышью на ползунке цвет также будет меняться, давая пользователю понять, что захват произведен, и ползунок можно перетаскивать. Для создания элементов скроллинга будем использовать графические объекты типа OBJ_RECTANGLE_LABEL (прямоугольная метка).

Рецепты MQL5 - Элементы управления в подокне индикатора - Полоса прокрутки (scrollbar)

Автор: Anatoli Kazharski