Подам мысль:
1. а зачем контролы должны находиться на окне МТ?
2. если не идет речь про С++/Dll - то вопрос изначально неправильный,
поскольку нужно подрубаться к оконной процедуре окошек МТ.
.
Я сделал вот так
https://www.mql5.com/ru/forum/120805
т.е. отдельное окно- под него отдельный UI поток.
.
PS: лучше иметь одно дополнительное окно, а не несколько.
В этом случае, кстати, меньше мороки с UI / потоками /
иниц / деиниц приложения.
Dll, при наличии измененных данных в полях, спрашивала что-то типа
"Настройки изменены, сохранять?" / да/нет/отмена,
при "отмене" выход из МТ не происходит.
Подам мысль:
1. а зачем контролы должны находиться на окне МТ?
2. если не идет речь про С++/Dll - то вопрос изначально неправильный,
поскольку нужно подрубаться к оконной процедуре окошек МТ.
Ну DLL как-бы подразумевалась.
Опять же если бы проблему с внутренними структурами терминала не была - никуда подрубаться особо не надо - вполне можно сделать субклассинг стандартных контролов или вообще свои замутить - ибо места на графике мало и крайне желаетльно немного попроще кнопочки, чем стандартные делать.
Я сделал вот так
https://www.mql5.com/ru/forum/120805
т.е. отдельное окно- под него отдельный UI поток.
Кстати, несложно сделать, чтобы при попытке закрыть МТ,
Dll, при наличии измененных данных в полях, спрашивала что-то типа
"Настройки изменены, сохранять?" / да/нет/отмена,
при "отмене" выход из МТ не происходит.
Да нет - не та задача.
Мою примерно можно описать как "сделать скрипт для ручной торговли с максимальным удобством".
Как-то так...
а удавалось кому-нибудь решить задачу размещения элементов управления на графике?
давно удалось.
если просто - то выглядит вот так http://forextools.com.ua/trading/ticks/scalper.html если совсем красиво - то вот так http://forextools.com.ua/trading/buysell.html
чистый Win32API, никаких DLL, банальное отслеживание координат мыши в окне да проверка нажимаемых клавиш + небольшие извраты связанные с МТ4
давно удалось.
если просто - то выглядит вот так http://forextools.com.ua/trading/ticks/scalper.html если совсем красиво - то вот так http://forextools.com.ua/trading/buysell.html
чистый Win32API, никаких DLL, банальное отслеживание координат мыши в окне да проверка нажимаемых клавиш + небольшие извраты связанные с МТ4
Ок, спасибо, это, пожалуй, достаточно близко к тому, что я ищу...
Правда решения задачи размещения полноценных контролов там всё-таки нет. :(
В общем, если кому интересно - просто создать собственное дочернее окно мне волне удалось, не смотря на некоторые проблемы. В чём проблема со стандартными элементами управления - можно только гадать.
Писать собственные контролы - как-то лень, тем более, что лично мне нужны всего-то два типа - кнопки и чекбоксы. Видимо, по этой причине это ещё никто и не делал. :)
Azzx:
нужны всего-то два типа - кнопки и чекбоксы. Видимо, по этой причине это ещё никто и не делал. :)
делали.... даже встраивали форму окна в текущий график, отодвигая его границу в сторону чтобы форма не закрывала чарт. на самой форме - полный набор все что позволяла дельфя... только нафига весь этот цирк если всего делов-то выбрать лот, да стопы с тейками, да цену лимитника. простыми скриптами это делается на ура.
так что если вам красиво кодить охота - то Win32API вам в руки, а если торговать - вспомните про принцип KISS ;)
делали.... даже встраивали форму окна в текущий график, отодвигая его границу в сторону чтобы форма не закрывала чарт. на самой форме - полный набор все что позволяла дельфя... только нафига весь этот цирк если всего делов-то выбрать лот, да стопы с тейками, да цену лимитника. простыми скриптами это делается на ура.
так что если вам красиво кодить охота - то Win32API вам в руки, а если торговать - вспомните про принцип KISS ;)
Мне надо чтобы красиво работать потом было. А вот что это можно красиво запрограммировать - чегой-то я сильно сомневаюсь. Во всяком случае - представления о красоте у меня другие.
Хотя насчёт засунуть своё окно, а поверх уже стандартных контролов -это интересная мысль, спасибо.
Действительно, наверное, лучше посмотреть в сторону Delphi - там этот геморрой можно будет с минимальными затратами нервов сделать. :)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Вопрос такой к общественности (если вдруг у кого есть готовый лисапед) - а удавалось кому-нибудь решить задачу размещения элементов управления на графике?
По идее - хэндл окна у нас есть - почему бы и нет. На практике, однако, при попытке создать стандартную кнопку терминал делает вид, что "его тут не было" - без предупреждений закрывается. :)
Подозреваю, связано это с внутренними структурами данных, занимающимися диспетчеризацией. А может быть и защита так реагирует.
Есть ещё вариант попробовать отрисовать контролы ручками, но, честно говоря, не сильно-то хочется заморачиваться... Так что пока делаю как и все, кого я видел до этого - имитирую элементы управления стандартными оконными объектами - стрелками, линиями и т.д.
Есть у кого рабочий лисапед?