![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вы можете начать с этой статьи: https: //www.mql5.com/en/articles/12751
Вы можете начать с этой статьи: https: //www.mql5.com/en/articles/12751
Отлично... Спасибо большое!
Я уже приводил пример 4 года назад :))
Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий
как преобразовать все объекты в 1 объект
Николай Семко, 2019.10.05 22:39
Действительно, Canvas - это решение.
И Canvas намного проще, чем кажется на первый взгляд.
Вот примитивный пример индикатора (MQL5 & MQL4) с одним объектом OBJ_BITMAP_LABEL, в котором много окон.
В этой новой статье - еще один вариант реализации информационных панелей.
https://www.mql5.com/ru/articles/13179
![](https://c.mql5.com/2/57/terminal64_At7PhpGUZx.gif)
Вот например набросал скрипт, который это наглядно демонстрирует. Справа этот быстрый алгоритм, а слева мой (где-то в 4-10 раз медленее).
У меня получается уменьшать картинку Bmp, но полотно остаётся того-же размера. По той же причине я не могу увеличить картинку, она обрезается изначальными размерами, т.е. размером полотна.
В массивах не до конца разобрался, так что можешь мне объяснить, а лучше показать пример кодом:
1. Увеличение картинки
2. Полотно равное размеру картинки, если мы её уменьшили или увеличили.
Спасибо.
Nikolai Semko, привет. В этом примере https://www.mql5.com/ru/forum/227736/page66#comment_20456641 ты продемонстрировал изменение размера Bmp (уменьшение).
У меня получается уменьшать картинку Bmp, но полотно остаётся того-же размера. По той же причине я не могу увеличить картинку, она обрезается изначальными размерами, т.е. размером полотна.
В массивах не до конца разобрался, так что можешь мне объяснить, а лучше показать пример кодом:
1. Увеличение картинки
2. Полотно равное размеру картинки, если мы её уменьшили или увеличили.
Спасибо.
Круто и полезно. Ради интереса, это можно использовать в МТ4?
Доброго всем времени суток. Мне тоже интересен этот код. Но при использовании Resize() - не получается. Может как-то в другой последовательности надо.
Доброго всем времени суток. Мне тоже интересен этот код. Но при использовании Resize() - не получается. Может как-то в другой последовательности надо.
Хорошо, чуть позже дам пример.
Был-бы очень признателен за пример кода. Заранее спасибо...
Хорошо, чуть позже дам пример.
вот пример на основе библиотеки png.mql, когда при движении мышки меняется положение canvas и меняется его размер. Если указатель мышки находится по центру по горизонтали, то это соответствует оригинальному размеру изображения, если левее -уменьшение, правее - увеличение масштаба.
Только мне пришлось в png.mql переменные C и _С перебросить из private в public. Поэтому необходимо перезаписать эту библиотеку, если она уже установлена.
В этом примере есть два режима работы (input переменная bool resize_canvas):
Именно поэтому предпочитаю использовать один холст на весь экран!