Посмотрите в справке следующие функции ChartApplyTemplate - загрузка шаблона для графика. ChartSetInteger - задает свойства графика INTEGER - там много чего можно задать ТОЛЬКО НЕ ChartApplyTemplate - при применении шаблона он перезапустит советник
Renat Akhtyamov #: Меня до сих пор волнует вопрос: можно развернуть окно графика программно?
Если речь об MQL-способе, то нет. Можно лишь получить статус развернутости окна.
При помощи WinAPI - можно (проверял в МТ5):
#import "user32.dll"long GetParent(long hWnd);
int ShowWindow(long hWnd, int nCmdShow);
#import
#define SW_HIDE 0// Скрывает окно и активирует другое окно.#define SW_SHOWNORMAL 1// Активирует и отображает окно. Если окно свернуто, развернуто или упорядочено, система восстанавливает его исходный размер и положение. Приложение должно указать этот флаг при первом отображении окна.#define SW_SHOWMINIMIZED 2// Активирует окно и отображает его как свернутое окно.#define SW_SHOWMAXIMIZED 3// Активирует окно и отображает его в виде развернутого окна.#define SW_SHOWNOACTIVATE 4// Отображает окно с последним размером и положением. Это значение похоже на SW_SHOWNORMAL, за исключением того, что окно не активировано.#define SW_SHOW 5// Активирует окно и отображает его в текущем размере и положении.#define SW_MINIMIZE 6// Свертывание указанного окна и активация следующего окна верхнего уровня в порядке Z.#define SW_SHOWMINNOACTIVE 7// Отображает окно в виде свернутого окна. Это значение похоже на SW_SHOWMINIMIZED, за исключением того, что окно не активировано.#define SW_SHOWNA 8// Отображает окно в его текущем размере и положении. Это значение похоже на SW_SHOW, за исключением того, что окно не активировано.#define SW_RESTORE 9// Активирует и отображает окно. Если окно свернуто, развернуто или упорядочено, система восстанавливает его исходный размер и положение. Приложение должно указать этот флаг при восстановлении свернутого окна.#define SW_SHOWDEFAULT 10// Задает состояние отображения на основе значения SW_ , указанного в структуре STARTUPINFO , переданной в функцию CreateProcess программой, которая запустила приложение.#define SW_FORCEMINIMIZE 11// Свертывание окна, даже если поток, которому принадлежит окно, не отвечает. Этот флаг следует использовать только при минимизации окон из другого потока.voidOnStart()
{
long hChartParent = GetParent((int)ChartGetInteger(ChartID(), CHART_WINDOW_HANDLE));
if (hChartParent > 0)
ShowWindow(hChartParent, SW_SHOWMAXIMIZED);
}
Вот вам готовый скрипт. Сохраните в папку MQL5\Scripts, меняйте, запускайте.
не надо такое делать на каждом тике/скритом
правильнее выполнить при инициализации
не надо такое делать на каждом тике/скритом
правильнее выполнить при инициализации
Я же не написал что это советник или индикатор. Это скрипт. Он отрабатывает только один раз по событию OnStart
https://www.mql5.com/ru/docs/event_handlers/onstart
Неужели в самом советнике этот код не реализовать? Просто я видел множество примеров, кидаешь ЕА на график и тема меняется.
В советнике тоже можно. Только нужно отслеживать, чтобы это было однократное действие. Например, в OnInit() разместить.
В советнике тоже можно. Только нужно отслеживать, чтобы это было однократное действие. Например, в OnInit() разместить.
Добрый человек, а можно пример хотя бы как фон поменять?
Кусочек кода который я вставлю в ЕА, где бэкграунд поменяет цвет, ну например - желтый?
Добрый человек, а можно пример хотя бы как фон поменять?
Кусочек кода который я вставлю в ЕА, где бэкграунд поменяет цвет, ну например - желтый?
Так ведь выше уже был пример кода...
Как раз изменение фона на желтый цвет:
Меня до сих пор волнует вопрос: можно развернуть окно графика программно?
Если речь об MQL-способе, то нет. Можно лишь получить статус развернутости окна.
При помощи WinAPI - можно (проверял в МТ5):
Если речь об MQL-способе, то нет. Можно лишь получить статус развернутости окна.
При помощи WinAPI - можно (проверял в МТ5):
+++
Работает!
Спасибо!