Скачать MetaTrader 5

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

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Подключи MQL5 Cloud Network. Увеличивай свой рейтинг!
I_SPQR_I
212
I_SPQR_I 2013.02.11 11:48 
Думаю всем хорошо знакома статичная сетка в терминале. Вопрос заключается в следующем: как узнать размер стороны этой сетки в пунктах?
Комбинатор
15923
Комбинатор 2013.02.11 11:56  
Полностью рабочего варианта на данный момент не существует. И скорее всего не будет.
I_SPQR_I
212
I_SPQR_I 2013.02.11 12:48  
TheXpert:
Полностью рабочего варианта на данный момент не существует. И скорее всего не будет.

Почему вы в этом так уверены?
Комбинатор
15923
Комбинатор 2013.02.11 12:58  
Потому что я в теме :)
Рустам
3597
Рустам 2013.02.11 13:51  

какой глубокий смысл в этом заключен ? 

сетка все равно неравномерная и только для ориентировки, хотите правильную - делайте самостоятельно.

определить то можно, вот только зачем ? 

Комбинатор
15923
Комбинатор 2013.02.11 13:54  
FAQ:

определить то можно

На понт тебя взять что ли? ) когда окно графика развернуто, известный способ с GetWindowRect не пашет.
Рустам
3597
Рустам 2013.02.11 13:56  
TheXpert:
На понт тебя взять что ли? ) когда окно графика развернуто, известный способ с GetWindowRect не пашет.


  мало того, даже и подокна считаем ;)

ЗЫ. GetClientRect() не пробовал ?

Комбинатор
15923
Комбинатор 2013.02.11 13:59  
FAQ:
мало того, даже и подокна считаем ;)

Проверь таки на развернутом окне. Если пашет для главного, для подокон тоже будет.

А если ограждающую линию сделать цветом фона? ;)

Рустам
3597
Рустам 2013.02.11 14:00  
TheXpert:А если ограждающую линию сделать цветом фона? ;)


  А вот это уже читинг...

  сдуру, сам знаешь - что угодно сломать можно :))) 

I_SPQR_I
212
I_SPQR_I 2013.02.11 14:01  

Мне не сетка нужна: меня устраивает и та, что есть.

Это мне нужно только из соображений удобства.

Хочу определять реальные углы в градусах на экране. Для этого нужно знать цену деления квадратной сетки в барах (это не проблема) и в пунктах. Как оказалось специальной функции для этого нет - во всяком случае я не нашел.

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

Рустам
3597
Рустам 2013.02.11 14:01  

ладно уж :)) 

 

//+------------------------------------------------------------------+
//|                                 Function  :int GetWindowHigh([0])|
//|                                 Copyright © 2010, XrustSolution. |
//|                                           mail: xrustx@gmail.com |
//+------------------------------------------------------------------+
int GetWindowHigh(int wnd=0){int i,x=0,y=0;int window[4];
        double up,dn,pr,pPoint;
        int whd = WindowHandle(Symbol(),Period());
        GetClientRect(whd,window);
        int high = window[3]-window[1];
        int hDC = GetWindowDC(whd);
        int col = GetPixel(hDC, 4, 4);  
        for(i=5;i<high;i++){
                if(GetPixel(hDC, 4, i)!=col){
                        if(x>=wnd){
                                if(x==0){i-=6;}
                                i-=y;
                                break;
                        }else{
                                x++;
                                y=i+3;
                        }
                }
        }
        ReleaseDC(whd,hDC);
        return(i);
}
//+------------------------------------------------------------------+
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий