клавиша принт-скрин, затем штатный паинт и там загрузить из буфера, дальше сохранение в файл
Спасибо Кэп )) Это по вашему программно?
В условиях одного конкурса требуют прикладывать скриншоты. Хотел сделать на автомате, выяснилась бяка - ничего не выйдет. Функция MQL4 WindowScreenShot записывает только собственно график без сделок, индикаторов, графики и т.д.
Раньше ей не пользовался, не подозревал, что такая убогая и никому не нужная реализация. Есть какое-то готовое решение, может, кто знает?Алексей, сделай секундную задержку перед снятием скрина.
Дело в том, что сначала делается скрин, а потом пересчитываются индикаторы на открытии бара.
Спасибо Кэп )) Это по вашему программно?
ChartScreenShot() может поможет... Каламбурчик-с вышел...
Спасибо, я вчера и ее пробовал, проблема оказалась не в функциях. Сейчас прогнал вчерашний код и обнаружил, что все индикаторы и графика попадают в скриншот! Вчера (воскресенье) я делал тест на неработающем рынке, обычный скрипт, код ниже. Неужели снятие скриншота зависит от состояния рынка?? МТ4, билд 910.
#include <stderror.mqh> #include <stdlib.mqh> // узнает код последней ошибки и возвращает строку с описанием string GetMyLastError2() { int err = GetLastError(); string serr = ErrorDescription(err); ResetLastError(); return(serr); } void OnStart() { string sdir = "shots\\ScalpHunter\\" + Symbol() + "\\" + TimeToString(TimeCurrent(), TIME_DATE); // формируем имя папки string fname = sdir + "\\" + TimeToString(TimeCurrent(), TIME_DATE | TIME_MINUTES| TIME_SECONDS); StringReplace(fname, ":", "_"); // в имени файла двоеточия не допустимы, заменяем на подчеркивания if(!WindowScreenShot(fname + ".gif", 1280, 720)) Print("WindowScreenShot failed, ", GetMyLastError2()); if(!ChartScreenShot(0, fname + ".png", 1280, 720)) Print("ChartScreenShot failed, ", GetMyLastError2()); }
Алексей, сделай секундную задержку перед снятием скрина.
Дело в том, что сначала делается скрин, а потом пересчитываются индикаторы на открытии бара.
Не понял, между чем и чем делать секундную задержку? Со скрином вроде все заработало, читайте сообщение выше, но про задержку все же хочется понять )
Я столкнулся с такой проблемой при снятии скрина на открытии бара. Не показывались ни индикаторы, ни комментарии (левый верхний угол графика). Думаю что и у тебя скрин делается на открытии бара. Соответственно после открытия бара задержка и потом скрин...
Если-же не на открытии, то обрати внимание на настройки параметров скрина, у меня всё нормально снималось и с индикаторами и со сделками.
Я столкнулся с такой проблемой при снятии скрина на открытии бара. Не показывались ни индикаторы, ни комментарии (левый верхний угол графика). Думаю что и у тебя скрин делается на открытии бара. Соответственно после открытия бара задержка и потом скрин...
Если-же не на открытии, то обрати внимание на настройки параметров скрина, у меня всё нормально снималось и с индикаторами и со сделками.
Теперь ясно, у меня работает таймер с периодом 1 сек, скрин снимается по переменной-счетчику, сейчас интервал 30 сек. и к началу ТФ он не привязан. Учту это замечание. Сейчас все нормально скриншотится, в чем была проблема в выходные - не понял.
Теперь ясно, у меня работает таймер с периодом 1 сек, скрин снимается по переменной-счетчику, сейчас интервал 30 сек. и к началу ТФ он не привязан. Учту это замечание. Сейчас все нормально скриншотится, в чем была проблема в выходные - не понял.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
В условиях одного конкурса требуют прикладывать скриншоты. Хотел сделать на автомате, выяснилась бяка - ничего не выйдет. Функция MQL4 WindowScreenShot записывает только собственно график без сделок, индикаторов, графики и т.д.
Раньше ей не пользовался, не подозревал, что такая убогая и никому не нужная реализация. Есть какое-то готовое решение, может, кто знает?