Особенности языка mql5, тонкости и приёмы работы - страница 316

 
Vitaly Murlenko #:
Единственная вкладка "Советники", которую я нашёл в терминале, находится в настройках (вызывается по Ctrl+O). Но там нет ни какой автопрокрутки. Что Вы имеете ввиду?
Вкладка Эксперты в Инструментах (CTRL + T). Далее ПКМ внутри окна --> Автопрокрутка.
 
Andrei Iakovlev #:
Вкладка Эксперты в Инструментах (CTRL + T). Далее ПКМ внутри окна --> Автопрокрутка.

Эта вкладка испокон веков называлась "Журнал советников" или "Журнал экспертов". А следующую за ней вкладку "Журнал" всегда называли "Журнал работы терминала". Не знаю, можно ли программно влиять на журнал советников - надобности ни когда не было. Но хоть ясность появилась. И то хлеб.

Могу предложить альтернатииву: вместо информации, которую Ваш код отправляет в этот журнал, пусть он отправляет в текстовый документ. Это не сложно. Например, вместо того же принта можно использовать 1 раз написанную подпрограмму, которая добавляет строку в конец текстового документа. Ким когда-то опубликовывал такой код для МТ4. Ща гляну у себя.

// ======================== WritingLineInFile() ========================
//| Дописывание строки в конец файла
//+---------------------------------
void WritingLineInFile(string FlName,string Text,string Razdelitel){
  int file_handle=FileOpen(FlName,FILE_CSV|FILE_READ|FILE_WRITE,Razdelitel);
        if (file_handle!=INVALID_HANDLE){
                FileSeek(file_handle,0,SEEK_END);
                FileWrite(file_handle,Text);
                FileClose(file_handle);
        }
        else{
                Print(__FUNCTION__,"(): ","Ошибка № ",GetLastError()," Не удалось открыть файл ",FlName);
        }
}

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

 
Vitaly Murlenko #:
Могу предложить альтернатииву: вместо информации, которую Ваш код отправляет в этот журнал, пусть он отправляет в текстовый документ.

Интересное решение, и можно сделать так, чтобы файл очищался перед новой записью.

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

 
Andrei Iakovlev #:

Интересное решение, и можно сделать так, чтобы файл очищался перед новой записью.

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

Тогда нужно задать свой вопрос иначе. Я бы спросил так: "Скажите кто знает, есть ли в языке функции, влияющие на журнал экспертов?"
 
Vitaly Murlenko #:
Тогда нужно задать свой вопрос иначе. Я бы спросил так: "Скажите кто знает, есть ли в языке функции, влияющие на журнал экспертов?"

Например у fxsaber есть функция TerminalJournalClear в файле MTTester.mqh.

https://www.mql5.com/ru/code/26132

 
Andrei Iakovlev #:

Например у fxsaber есть функция TerminalJournalClear в файле MTTester.mqh.

https://www.mql5.com/ru/code/26132

Вот код этой подпрограммы:

static bool TerminalJournalClear( void )
  {
    return(!::IsStopped() && user32::SendMessageW(MTTESTER::GetTerminalHandle(), WM_COMMAND, 0X8135, 0));
  }

Что мы в ней видим? Остановка, посыл сообщения, получение хендла терминала. Как это влияет на журнал?

Не думаю, что это Вам пригодится.

P.S.

Проверил в справке языка MQL5 вхождение слова Journal в справку. Этот термин употребляется 1 раз и только в LeastSquaresSolutionWY. См. Методы матриц и векторов. Но, думаю, что это не Ваша тема.

Функции работы с журналом было бы логично именовать так, чтоб слово журнал в них присутствовало. Может я и ошибаюсь, но по-моему мнению высоковероятно, что нужных Вам влияний на журнал советников в языке попросту нет. Честно говоря, за считай 2 десятка лет взаимодействия с языком MQL, я впервые сталкиваюсь с надобностью кого-то оказывать влияние на этот журнал программно. Это возвращает нас к исходному вопросу, а какова в этом надобность? Это просто желание (без которого можно обойтись), или нужда заставляет?

 
fxsaber #:

Такой код.

Спасибо, работает.

Vitaly Murlenko #:
Как это влияет на журнал?

Влияет на жрунал так, что журнал очищается.

 
fxsaber #:

Такой код.

Как-нибудь можно узнать текущее состояние автопрокрутки, вкл. она или нет?
 
Andrei Iakovlev #:
Как-нибудь можно узнать текущее состояние автопрокрутки, вкл. она или нет?
Не знаю.