- Не работает MessageBox в MQL5
- Расширение интерфейса MT4
- Индикаторы: KPmSt
Где можно почитать об использовании модулей из папки MQL4\Include\Controls (диалоговые окна и элементы управления на графике с помощью ООП)?
Просто ищите статьи по этой тематике для MQL5, библиотеки одинаковы, но в MQL5 она побогаче. Поиском по сайту "элемент управления". И также смотрите справку по MQL5 - Стандартная библиотека.
Можно еще попытаться самому разобраться в методах. Код там удобочитаем.
Где можно почитать об использовании модулей из папки MQL4\Include\Controls (диалоговые окна и элементы управления на графике с помощью ООП)?
Переходите на MQL5 - много статей и документация с примерами.
Дак вроде кроме торговых операций разницы почти нет меж стандартными библиотеками MT4 / 5 ?
В МТ5 побогаче будет.
Но сюрпризов в процессе разработки будет ой как немало! ;)
Но сюрпризов в процессе разработки будет ой как немало! ;)
Точно! И первый сюрприз, переполнение стека (Stack overflow) и небольшая неадекватность кнопок. Мой пробный индикатор добавляет на чарт окно (наследник класса CAppDialog), при попытке свернуть его вылетает Stack overflow, при закрытии, индикатор полностью удаляется с графика. Попробовал реализовать обработку кликов по кнопке (как описано здесь https://www.mql5.com/ru/articles/345) и все кнопки (включая те для которых я не успел ещё сделать обработку кликов) стали вдруг отжиматься при отпускании мыши. Мне же нужно чтобы те кнопки, для которых установлена обработка кликов отжимались, а те на которых установлены обработчики OnMouseDown и OnMouseUp сохраняли своё нажатое/отжатое состояние. Я точно не знаю, но думаю, что вся проблема в неправильной обработке событий с помощью макросов, да и сам обработчик событий родительского класса (CAppDialog) написан немного неправильно.
Для обработки событий используется следующий механизм, в наследнике класса CAppDialog прописывается:
virtual bool OnEvent(const int id,const long &lparam,const double &dparam,const string &sparam);
Но обработчик переопределяет не функция, а набор макросов. Можно ли переопределить OnEvent не макросами, а с помощью функции, как обычно, тогда переполнение стека при сворачивании окна должно исчезнуть и обработку нажатий на кнопки можно будет сделать свою? Ещё, если обработчик OnEvent будет свой, как сделать обращение к кнопкам сворачивания и закрытия окна?
- 2012.01.11
- MetaQuotes Software Corp.
- www.mql5.com
Вот потому и лучше разобраться в коде )). Уже пару раз приходилось корректировать стандартную библиотеку под себя.
Иногда проще написать все заново, чем разбираться в таком объеме кода.
Проблема в том, что по нему совсем нет документации. А двигаться вслепую получается медленно, а иногда и больно )
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования