Текст привязываю к цене линии + 3*Point (т.е. ставлю чуть выше), но все равно, когда меняю размеры графика (окна) текст то выше линии, то ниже, то на уровне линии (скачет)... Почему это происходит? - Я же вроде даю точную координату по цене. Как это решается?
Я посмотрел и попробовал, как делают другие, но там эффект аналогичный. Хочу понять как от этой "прыгалки" избавляются. И главное почему она появляется, раз координаты жесткие: цена и время?
TarasBY:
Текст вводят в описание объекта и на графике разрешают показывать описания объектов (один из способов).
Как это программно реализовать? Поискал, потыкался - не нашел. Руками получается, а что за команды должны быть....
string name, string text, int font_size, string font_name=NULL, color text_color=CLR_NONE)
Изменение описания объекта. Для объектов OBJ_TEXT и OBJ_LABEL это описание отображается на графике в виде текстовой строки. В случае успеха функция возвращает значение TRUE, иначе FALSE. Для получения дополнительной информации об ошибке необходимо вызвать функцию функцию GetLastError(). Параметры font_size, font_name и text_color используются только для объектов OBJ_TEXT и OBJ_LABEL. Для объектов других типов эти параметры игнорируются. См. такжеObjectDescription().
Параметры:
name
-
Имя объекта.
text
-
Текст описания обьекта.
font_size
-
Размер шрифта в пунктах.
font_name
-
Наименование шрифта.
text_color
-
Цвет текста.
Пример:
ObjectSetText("text_object", "Hello world!", 10, "Times New Roman", Green);
TarasBY: А кому я отвечаю??? - https://forum.mql4.com/ru/52892/page20#732354
: ))))))) Ура! я разобрался... - Сейчас поэкспериментировал после взбучки. Я же не знал что так можно делать... : )) Я посмотрел как у других делается и делал по аналогии. А оказывается эта функция "..СетТекст" самостоятельная. Я думал только после создания текстового объекта.
Спасибо еще раз большое! : ))) Еще чему-то научился. : ))
в результате звук должен проходить ОДИН РАЗ. А он сигналит на каждом тике!!!
У вас flag -- локальная переменная?
P.S. Когда не совсем понятно, что происходит, лучше лишний раз распечатать значения переменных, до и после проверяемых функции или оператора, чтобы видеть, как именно они их меняют. Иногда значения на входе оказываются не такими, которых мы там ожидаем, и найти в коде, гдеи почему они становятся такими , какие есть, гораздо проще, чем угадать, почему программа работает неправильно.
Тьфу, не сглаженность, а Замедление. Вот десять:
Вот глянь, как в учебнике стохастик считают.
Chiripaha:
Текст привязываю к цене линии + 3*Point (т.е. ставлю чуть выше), но все равно, когда меняю размеры графика (окна) текст то выше линии, то ниже, то на уровне линии (скачет)... Почему это происходит? - Я же вроде даю точную координату по цене. Как это решается?
Я посмотрел и попробовал, как делают другие, но там эффект аналогичный. Хочу понять как от этой "прыгалки" избавляются. И главное почему она появляется, раз координаты жесткие: цена и время?
TarasBY:
Текст вводят в описание объекта и на графике разрешают показывать описания объектов (один из способов).Как это программно реализовать? Поискал, потыкался - не нашел. Руками получается, а что за команды должны быть....
Параметры font_size, font_name и text_color используются только для объектов OBJ_TEXT и OBJ_LABEL. Для объектов других типов эти параметры игнорируются.
См. также ObjectDescription().
ObjectSetText("text_object", "Hello world!", 10, "Times New Roman", Green);Вооооот... Дескрипшион... : )))) А я то обыскался где это такое делается.... Спасибо огромное! : )))
Вооооот... Дескрипшион... : )))) А я то обыскался где это такое делается.... Спасибо огромное! : )))
ObjectDescription() только возвращает свойство (в данном случае описание), НО не устанавливает его!!!
ObjectDescription() только возвращает свойство (в данном случае описание), НО не устанавливает его!!!
Да... Вот, как раз с этим разобрался... А как его установить то?.. : ((
Вручную оно же там отражается, если через окошко свойств его устанавливать.
Да... Вот, как раз с этим разобрался... А как его установить то?.. : ((
Вручную оно же там отражается, если через окошко свойств его устанавливать.
А кому я отвечаю??? - https://forum.mql4.com/ru/52892/page20#732354
: ))))))) Ура! я разобрался... - Сейчас поэкспериментировал после взбучки. Я же не знал что так можно делать... : )) Я посмотрел как у других делается и делал по аналогии. А оказывается эта функция "..СетТекст" самостоятельная. Я думал только после создания текстового объекта.
Спасибо еще раз большое! : ))) Еще чему-то научился. : ))
Распечатайте состояние флагов отдельно для каждого условия. У вас получается так потому, что в условиях не учитывается состояние второго флага.
P.S. И удобнее, чтобы не путаться распечатывать Print("flag=",flag,"flagg=",flagg);
распечатал Print("flag=",flag,"flagg=",flagg);
принтует flag=1 flagg=0 КАК И ПОЛОЖЕНО!
но почему-то сигнал проходит КАЖДЫЙ ТИК!
т.е. условие if(Ma_1<Ma_2 && flag==0) flag игнорируется ПОЛНОСТЬЮ! как так? флаг печатает flag=1 и тут же прходит if(Ma_1<Ma_2 && flag==0) ->ЗВУК
-----------------
вообще можно упростить код до следующего
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1 }
в результате звук должен проходить ОДИН РАЗ. А он сигналит на каждом тике!!!
распечатал Print("flag=",flag,"flagg=",flagg);
принтует flag=1 flagg=0 КАК И ПОЛОЖЕНО!
но почему-то сигнал проходит КАЖДЫЙ ТИК!
т.е. условие if(Ma_1<Ma_2 && flag==0) flag игнорируется ПОЛНОСТЬЮ! как так? флаг печатает flag=1 и тут же прходит if(Ma_1<Ma_2 && flag==0) ->ЗВУК
-----------------
вообще можно упростить код до следующего
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1 }
в результате звук должен проходить ОДИН РАЗ. А он сигналит на каждом тике!!!
P.S. Когда не совсем понятно, что происходит, лучше лишний раз распечатать значения переменных, до и после проверяемых функции или оператора, чтобы видеть, как именно они их меняют. Иногда значения на входе оказываются не такими, которых мы там ожидаем, и найти в коде, гдеи почему они становятся такими , какие есть, гораздо проще, чем угадать, почему программа работает неправильно.У вас flag -- локальная переменная?