Скачать MetaTrader 5

API: как узнать размер графика в пикселях?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Roma
1019
Roma  
как узнать, к примеру, высоту? главного графика
Рустам
3597
Рустам  

вас наверное забанили на поиск в гугле ?

размер графика в пикселях site:mql4.com

Кстати с высотой как раз проблема, можно определить только высоту окна графика, если на него нацепить под окна, то они из обшей высоты не отнимаются

Vadim Zhunko
5226
Vadim Zhunko  
Узнать-то можно, но возни слишком много.
Рустам
3597
Рустам  
согласен, искать двойную сплошную с форегаунд цветом - для подавляющего большинства задач - оно того не стоит.
Сергей
712
Сергей  
Zhunko:
...возни слишком много.

ну прямо.... ;)

делов-то: получить цвет левого верхнего пикселя границы окна (кажется 4х4) и пробежаться вниз по рамочке пока пиксель будет этого же цвета и получить эту самую высоту. если побежать дальше - можно получить и высоты окон всех пристегнутых индикаторов. аналогично (по горизонтали) можно получить и ширину. Единственная заморочка - запаздывание в отработке при изменении размеров окна между тиками.

Roma
1019
Roma  
как это сделать?
gena
53
gena  

вот, уже была такая тема:

как определить размер окна в пикселях ?

https://www.mql5.com/ru/forum/130410

Vadim Zhunko
5226
Vadim Zhunko  
f.t.:

ну прямо.... ;)

делов-то: получить цвет левого верхнего пикселя границы окна (кажется 4х4) и пробежаться вниз по рамочке пока пиксель будет этого же цвета и получить эту самую высоту. если побежать дальше - можно получить и высоты окон всех пристегнутых индикаторов. аналогично (по горизонтали) можно получить и ширину. Единственная заморочка - запаздывание в отработке при изменении размеров окна между тиками.

Вот и говорю, что возни много. Бегать туда-сюда...
Alexey Navoykov
4029
Alexey Navoykov  

Может есть какой-то штатный способ? AfxFrameOrView42s - что за класс?

Сергей
712
Сергей  
eddy:
как это сделать?

вот тут есть код определения цвета фона. вам нужен цвет точки int col = GetPixel(hDC, 4, 4);

ну и дальше цикл перебора по y с выходом if (col != GetPixel(hDC, 4, y) ) break;

думаю со всем кодом справитесь сами ;)
Комбинатор
16096
Комбинатор  
f.t.:

ну прямо.... ;)

И ненадежно.


123456
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий