Ошибки, баги, вопросы - страница 2702

 
Slava:

Вот мой эксперт, на котором я ещё раз проверил

Всё штатно, тултипы выводятся согласно zorder

Попробуйте мой индикатор. Суть, похоже, в установке zorder значения -1 + последующий ChartRedraw(). И одновременно, быстро менять zorder + выбирать/сбрасывать видимость объекта.

 

2361
Компилятор поднимает предупреждение 

integral constant overflow

на строку с произведением

ulong ms = 0;
ms = 40320*60000;

Если подставить результат произведения, то предупреждений нет

ulong ms = 0;
ms = 2419200000;
 
Alexey Kozitsyn:

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

Во всём виноват Чубайс...

А свойства посмотреть? Например OBJPROP_SELECTABLE

 
Комментарии, не относящиеся к этой теме, были перенесены в "Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам".
 
Slava:

Во всём виноват Чубайс...

А свойства посмотреть? Например OBJPROP_SELECTABLE 

Вы понимаете, что для вновь созданных вручную горизонтальных линий не отображаются тултипы, они выделены и выделение убирается только через установку в окне свойств галочки у Disable selection (по даблклику не убирается выделение). Также гор. линии становятся некликабельными: CHARTEVENT_OBJECT_CLICK для них не срабатывает. Тем не менее, их можно передвинуть мышью (если убрать галочку Disable selection даже у НЕ выделенного объекта)...

Терминал перезагружал, компьютер перезагружал, не помогло.

ТОЛЬКО гор. линии сломались. С остальными объектами все норм. В других терминалах все норм.

 
Slava:

Посмотрите в сторону одновременной установки zorder + ChartRedraw() через ИНДИКАТОР!

Т.е. чтобы было так:

zorder = -1 + ChartRedraw();

zorder = 0 + ChartRedraw();

zorder = 1 + ChartRedraw();

zorder = -1 + ChartRedraw();

zorder = 0 + ChartRedraw();

zorder = 1 + ChartRedraw();

У меня при выполнении этих действий гор. линии поломались.

 
Alexey Kozitsyn:

Вы понимаете, что для вновь созданных вручную горизонтальных линий не отображаются тултипы, они выделены и выделение убирается только через установку в окне свойств галочки у Disable selection (по даблклику не убирается выделение). Также гор. линии становятся некликабельными: CHARTEVENT_OBJECT_CLICK для них не срабатывает. Тем не менее, их можно передвинуть мышью (если убрать галочку Disable selection даже у НЕ выделенного объекта)...

Терминал перезагружал, компьютер перезагружал, не помогло.

ТОЛЬКО гор. линии сломались. С остальными объектами все норм. В других терминалах все норм.

Проблема - в выставлении отрицательного z order

ChartRedraw ни при чём

PS. Исправление будет в следующем билде

 
Slava:

Проблема - в выставлении отрицательного z order

ChartRedraw ни при чём

PS. Исправление будет в следующем билде

Есть еще одна проблема, может по пути исправите.

Толтип не работет если какое либо из значений OBJPROP_XSIZE, OBJPROP_YSIZE  отрицательное...

OBJ_RECTANGLE_LABEL

Если мы берем угол отрисовки CORNER_LEFT_UPPER, ставим OBJPROP_XSIZE например 200 а OBJPROP_YSIZE  например   -600 что бы прямоугольник рос в верх, то толтип не работает.

 
Slava:

Проблема - в выставлении отрицательного z order

ChartRedraw ни при чём

PS. Исправление будет в следующем билде

Ок, спасибо.

Вопрос: Вы сделаете, чтобы отрицательный zorder можно было ставить или, наоборот, нельзя?

 
Alexey Kozitsyn:

Ок, спасибо.

Вопрос: Вы сделаете, чтобы отрицательный zorder можно было ставить или, наоборот, нельзя?

Можно