Ошибки, баги, вопросы - страница 2741
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Делаю панель, программно отлавливаю Ctrl + Mouse Wheel и масштабирую элементы панели.
Однако на это же событие срабатывает масштабирование цен и загружается надпись "Waiting For Update", которая полностью перекрывая панель на неопределенное время.
Пример кода, то, что закомментировано так же используется в проекте, но ни как не влияет на вышеописанную проблему:
кажется баг? ширина метки в документации написано, что доступна для чтения, но
выдаёт
на графике текст есть:
полный код прилагаю
кажется баг? ширина метки в документации написано, что доступна для чтения, но
Ширина доступна только после полной отрисовки объекта.
Недавно тоже решал данную проблему.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
Sergey Dzyublik, 2020.05.12 19:32
При использовании OBJ_EDIT возникла проблема - необходимость установить размер OBJPROP_XSIZE и OBJPROP_YSIZE, чтобы в соответствующие размеры объекта помещался весь текст.Вопрос: как определить размер OBJPROP_XSIZE и OBJPROP_YSIZE, что бы туда поместился весь текст?
Рассмотрел два варианта:
1. Создание объекта OBJ_LABLE, считывание размеров, удаление объекта OBJ_LABLE.
Не подходит из-за того, что считывание размеров возможно только после фактического создания объекта и не возможно, когда объект находится в очереди на ChartRedraw.
2. Использование TextSetFont с последующим TextGetSize.
Не подходит, так как результат кардинально отличается от результатов метода №1, отличия в 2.5 - 2.9 раз в зависимости от размера шрифта.
Возможно причина в 4К мониторе и 175% DPI.
Спасибо Geess за решение.
Необходимо домножить на -10 размер шрафта при передаче в TextSetFont.
Ширина доступна только после полной отрисовки объекта.
Недавно тоже решал данную проблему.
Спасибо! Решение прилагаю
Какие флаги и подводные камни могут быть, если из одной MQL-программы что-то должно дописываться в файл (RAM-drive) постоянно, а из других (и другой Терминал) читаться из него же все эти дописываемые данные?
сохранность данных должна обеспечиваться, но думаю как минимум 2 проблемы:
- нет гарантированной синхронизации при одновременном доступе, т.е. можно повторно читать уже прочитанные данные и вместе с этим не дать записать новые данные - коллизии
- нет средства обнаружения и контроля такой ситуации
решения как обычно - семафоры или писать свой диспетчер записи
ЗЫ: кажется есть возможность в памяти расположить встроенный SQLite , там хоть проконтролировать состояние БД можно
В пятерке аналогично индикаторы работают, но все нормально, без зависаний.
Нет, в пятерке индикаторы в потоке инструмента.
Пожалуйста исправьте баг - краш МТ терминала при попытке отладить статическую функцию структуры.
Даже в примере выше, если поймать точку останова на строке "p1 = p2;" это приведет к крашу терминала.