Обновление платформы MetaTrader 4 build 670: виртуальный хостинг, web-запросы и работа с сигналами из MQL-программ - страница 6

 

Функция WindowScreenShot( )

делает такой скриншот

 

а сам терминал через контекстное меню делает скриншот так  

 

считаю это багом  

 
VOLDEMAR:

который год мучает вопрос что это и зачем в справке описания не нашёл на форуме то же нет....

Точка привязки графика. Если нажать Энтер и ввести дату, график переместится этой датой именно на это место.
 
komposter:
Точка привязки графика. Если нажать Энтер и ввести дату, график переместится этой датой именно на это место.

Угу спасибо, я знал про введение даты но никогда не знал зачем этот треугольник в низу...
 

вопрос , попробовал вsзвать функцию fuc () изнутри функции fuc(),  компилятор не ругается 

но выходит ошибка  4060: "Функция не подтверждена." , как поправить ситуацию или как подтвердить функцию ?

 

Build 670, не работают оба варианта, подскажите в чем может быть проблема ?

ChartSetInteger(0,CHART_SHOW_DATE_SCALE,0,false);
ChartSetInteger(0,CHART_SHOW_PRICE_SCALE,0,false);

ChartSetInteger(0,CHART_SHOW_DATE_SCALE,false);
ChartSetInteger(0,CHART_SHOW_PRICE_SCALE,false);
 

OBJ_EDIT - сам объект всегда имеет точку привязки в левом верхнем углу. Если объект привязывается к углу графика CORNER_LEFT_UPPER, то все нормально и удобно. А если объект привязывается к углу графика CORNER_RIGHT_UPPER, тогда точка привязки объекта остается все равно в левом верхнем углу, и объект уходит за границу графика. Логично было бы изменять точку привязки объекта соответственно угла привязки графика.

 
VOLDEMAR:

вопрос , попробовал вsзвать функцию fuc () изнутри функции fuc(),  компилятор не ругается 

но выходит ошибка  4060: "Функция не подтверждена." , как поправить ситуацию или как подтвердить функцию ?

Попробовал вызвать функцию factorial() из функции factorial():

#property strict

/******************************************************************************/
uint factorial(uint const n) {
  if (n > 1) {
    return n * factorial(n - 1);
  }

  return 1;
}

/******************************************************************************/
void OnStart() {
  Print("Факториал 10 = ", factorial(10));
}

Компилятор действительно не ругается. Запускаю:

00:37:38 Script 3 EURUSDm,H1: loaded successfully
00:37:38 3 EURUSDm,H1: initialized
00:37:38 3 EURUSDm,H1: Факториал 10 = 3628800
00:37:38 3 EURUSDm,H1: uninit reason 0
00:37:38 Script 3 EURUSDm,H1: removed

И не вижу ошибки 4060. Что я делаю не так?

 
Bobs:

OBJ_EDIT - сам объект всегда имеет точку привязки в левом верхнем углу. Если объект привязывается к углу графика CORNER_LEFT_UPPER, то все нормально и удобно. А если объект привязывается к углу графика CORNER_RIGHT_UPPER, тогда точка привязки объекта остается все равно в левом верхнем углу, и объект уходит за границу графика. Логично было бы изменять точку привязки объекта соответственно угла привязки графика.

Используйте механизм как в С++, там работают по одной точке привязки для всех объектов - левый верхний угол. Для того что бы объект был привязан к правому углу либо нижней точке, используйте события. MetaQuotes вообще зря стали использовать четыре точки привязки.
 

Когда вот это хозяйство:

bool cursor_pos();

bool cursor_pos()
{
    return false;
}

находится в главном файле, всё нормально. Когда во включаемом, то это уже warring: no #import declaration 111.mqh 11 6. Ругается из-за forward declaration.  

По-моему компилятор просто придирается. 

 

Ошибка при компиляции:

class W
{
public:
    W(int) {}
};

class Q
{
public:
    static const int val;
    static void fn()
    {
        W w(Q::val);
    }
};
const int Q::val = 3;