SetLabelParams

Страницы: 1
RSS
SetLabelParams, особенности использования
 
Не добился ответа с начала дня, может так смогу обратить внимание разработчиков?

После использования SetLabelParams метку не возможно сдвинуть с мета вручную. В докуметации об этом ни слова.
Поясните, каким образом можно обойти этот баг? Или,если это не баг, то как правильно задавать новые параметры метки, чтобы ручная перестановка на графике сохранилась?
 
Цитата
Viktor MMM пишет:
Не добился ответа с начала дня , может так смогу обратить внимание разработчиков?

После использования SetLabelParams метку не возможно сдвинуть с мета вручную. В докуметации об этом ни слова.
Поясните, каким образом можно обойти этот баг? Или,если это не баг, то как правильно задавать новые параметры метки, чтобы ручная перестановка на графике сохранилась?
Здравствуйте,
Приведите пример кода и сообщите версию терминала
 
версия 6,17,1,17

часть скрипта:

Код
   _log(COMMENT_ALL..LOG_TABULATOR.."Set Изменение текста метки № "..tostring(Q).."("..tostring(LABELNUMTEXT[Q])..") прошло  "..tostring(SetLabelParams(GRAPH_ID,LABELNUMTEXT[Q],LabelText[Q])))
 
При этом метка меняется. Например цвет, прозрачность, или файл метки - все отрабатывает.
Зацикливания нет, скрипт дальше работает.
На эране несколько меток.
И если они были расставлены черз AddLabel, их можно двигать.
А если над одной из меток поработал SetLabelParams - все. двигать не могу руками.

Весь скрипт не могу выложить.
Если требуются уточнения, говорите, выложу части.
 
Цитата
Viktor MMM пишет:
т
Приведите ПОЛНЫЙ пример кода.
 
ПОЛНЫЙ.. У меня конечно в функциях все.

вот например одна из них:

Код
function _SetLab(par1)
   local Q = par1
   _ScreenTable = {}
   _ScreenTable = _GetScreenArray(t_id)
   _log(COMMENT_ALL..LOG_TABULATOR.."Текущая строка = ".._ScreenTable[Q][1]..";".._ScreenTable[Q][2]..";".._ScreenTable[Q][3]..";".._ScreenTable[Q][4]..";".._ScreenTable[Q][5])
   if _ScreenTable[Q][OPERATION_STOLB+1] == TEXT_DIRECTION_1 and _ScreenTable[Q][STATUS_STOLB+1] == TEXT_COMMAND_2 then 
      _log(COMMENT_ALL..LOG_TABULATOR.." Set Текущая метка Green")
      LabelLine[Q]["IMAGE_PATH"] = pathGREEN 
   end 
   if _ScreenTable[Q][OPERATION_STOLB+1] == TEXT_DIRECTION_2 and _ScreenTable[Q][STATUS_STOLB+1] == TEXT_COMMAND_2 then 
   
      LabelLine[Q]["IMAGE_PATH"] = pathRED 
      _log(COMMENT_ALL..LOG_TABULATOR.."Set Текущая метка RED")
   end
   
   LabelText[Q]["TRANSPARENCY"] = 0

   _log(COMMENT_ALL..LOG_TABULATOR.."Set Изменение метки № "..tostring(Q).."("..tostring(LABELNUMLINE[Q])..") прошло  "..tostring(SetLabelParams(GRAPH_ID,LABELNUMLINE[Q],LabelLine[Q])))
   
   _log(COMMENT_ALL..LOG_TABULATOR.."Set Изменение текста метки № "..tostring(Q).."("..tostring(LABELNUMTEXT[Q])..") прошло  "..tostring(SetLabelParams(GRAPH_ID,LABELNUMTEXT[Q],LabelText[Q])))
end
 
_GetScreenArray(t_id) создает массив из таблицы
если метка зеленая, то в массиве меток
Код
LabelLine[Q]["IMAGE_PATH"] = pathGREEN 
устанавливается новое значение.
Остальное остается как есть.
Далее SetLabelParams срабатывает и я на графике вижу, что эта метка изменила вид. Но двигать её я больше не могу.

Надеюсь, стало яснее.
 
Или давайте тестовый напишу срипт, если не знакомы с проблемой..
 
Здравствуйте!
Информация получена, проблема изучается. Постараемся в ближайшее время дать ответ.
 
Цитата
Viktor MMM пишет:
После использования SetLabelParams метку не возможно сдвинуть с мета вручную.
В принципе, этой информации уже достаточно для воспроизведения проблемы.
Далее пишем простенький код:
Код
message(tostring(SetLabelParams(tag, AddLabel(tag, tLabel), tLabel)), 2)

и убеждаемся, что метку переместить вручную уже нельзя.
Надо делать так, как надо. А как не надо - делать не надо.
 
Спасибо, буду ждать ответа.

Есть еще вопрос. Как-нибудь можно перехватить скриптом удаление метки вручную?
 
Если до этого метка была создана скриптом, можно проверить наличие метки функцией GetLabelParams
 
Ок, спасибо. Поэкспериментирую.
 
с определением разобрался. Если метку удалить, то её номер сохраняется в системе, но значения полей в таблице - nil. По ним и можно выяснить наличие метки.
Надеюсь, что в ближ. время ответите по основному вопросу ветки.
 
Sergey Gorokhov,


добрый день, проблема обозначена выше - после применения функции SetLabelParams метка больше не поддается ручному перемещению.
Ждем Вашего комментария - "фиксим баг и исправляем" или "так и было задумано"?
 
Цитата
green_X5 пишет:
Sergey Gorokhov,


добрый день, проблема обозначена выше - после применения функции SetLabelParams метка больше не поддается ручному перемещению.
Ждем Вашего комментария - "фиксим баг и исправляем" или "так и было задумано"?
Здравствуйте,
Ответа пока нет.
 
Цитата
Sergey Gorokhov пишет:
Цитата
green_X5 пишет:
Sergey Gorokhov,


добрый день, проблема обозначена выше - после применения функции SetLabelParams метка больше не поддается ручному перемещению.
Ждем Вашего комментария - "фиксим баг и исправляем" или "так и было задумано"?
Здравствуйте,
Ответа пока нет.
Сергей, день добрый,
если такая проблема действительно выявится и будет решаться, есть пожелание:
Добавить меткам контрол HandleMoving регулирующий разрешение на ручное перемещение, а функции SetLabelParams необязательный аргумент для передачи в этот контрол булев значение, по-умолчанию true.
 
Цитата
green_X5 пишет:
Добавить меткам контрол HandleMoving регулирующий разрешение на ручное перемещение, а функции SetLabelParams необязательный аргумент для передачи в этот контрол булев значение, по-умолчанию true.
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
 
Цитата
Старатель пишет:
Цитата
Viktor MMM пишет:
После использования SetLabelParams метку не возможно сдвинуть с мета вручную.
В принципе, этой информации уже достаточно для воспроизведения проблемы.
Далее пишем простенький код:
Код
 message(tostring(SetLabelParams(tag, AddLabel(tag, tLabel), tLabel)), 2) 
и убеждаемся, что метку переместить вручную уже нельзя.
Обратил внимание, что если после SetLabelParams в настройках метки снять привязку ко времени и цене, то метку можно двигать вручную.
Может, это имеет отношение к обсуждаемой проблеме.
Надо делать так, как надо. А как не надо - делать не надо.
 
Как это, снять привязку?
У меня в таблице меняются значения, потом вся эта таблица перезаписывается в метку через SetLabelParams.
 
Цитата
Viktor MMM пишет:
Как это, снять привязку?
Вручную снять галки в настройках метки. Но не думаю, что это - то, что вам нужно: после снятия привязки метка будет смещаться относительно осей при масштабировании.
Надо делать так, как надо. А как не надо - делать не надо.
 
ну да, не подойдет, к сожалению.
 
Цитата
Viktor MMM пишет:
ПОЛНЫЙ.. У меня конечно в функциях все.

вот например одна из них:
Код
 function _SetLab(par1)
   local Q = par1
   _ScreenTable = {}
   _ScreenTable = _GetScreenArray(t_id)
   _log(COMMENT_ALL..LOG_TABULATOR.."Текущая строка = ".._ScreenTable[Q][1]..";".._ScreenTable[Q][2]..";".._ScreenTable[Q][3]..";".._ScreenTable[Q][4]..";".._ScreenTable[Q][5])
   if _ScreenTable[Q][OPERATION_STOLB+1] == TEXT_DIRECTION_1 and _ScreenTable[Q][STATUS_STOLB+1] == TEXT_COMMAND_2 then 
      _log(COMMENT_ALL..LOG_TABULATOR.." Set Текущая метка Green")
      LabelLine[Q]["IMAGE_PATH"] = pathGREEN 
   end 
   if _ScreenTable[Q][OPERATION_STOLB+1] == TEXT_DIRECTION_2 and _ScreenTable[Q][STATUS_STOLB+1] == TEXT_COMMAND_2 then 
   
      LabelLine[Q]["IMAGE_PATH"] = pathRED 
      _log(COMMENT_ALL..LOG_TABULATOR.."Set Текущая метка RED")
   end
   
   LabelText[Q]["TRANSPARENCY"] = 0

   _log(COMMENT_ALL..LOG_TABULATOR.."Set Изменение метки № "..tostring(Q).."("..tostring(LABELNUMLINE[Q])..") прошло  "..tostring(SetLabelParams(GRAPH_ID,LABELNUMLINE[Q],LabelLine[Q])))
   
   _log(COMMENT_ALL..LOG_TABULATOR.."Set Изменение текста метки № "..tostring(Q).."("..tostring(LABELNUMTEXT[Q])..") прошло  "..tostring(SetLabelParams(GRAPH_ID,LABELNUMTEXT[Q],LabelText[Q])))
end
  
_GetScreenArray(t_id) создает массив из таблицы
если метка зеленая, то в массиве меток
Код
 LabelLine[Q]["IMAGE_PATH"] = pathGREEN  
устанавливается новое значение.
Остальное остается как есть.
Далее SetLabelParams срабатывает и я на графике вижу, что эта метка изменила вид. Но двигать её я больше не могу.

Надеюсь, стало яснее.
Добрый день,

Описанная поблема с метками будет исправлена в одной из очередных версий программы.
Приносим извинения за причиненные неудобства.
 
Ясно.
Спасибо.
 
Цитата
green_X5 пишет:
Цитата
Sergey Gorokhov пишет:
Цитата
green_X5 пишет:
Sergey Gorokhov,


добрый день, проблема обозначена выше - после применения функции SetLabelParams метка больше не поддается ручному перемещению.
Ждем Вашего комментария - "фиксим баг и исправляем" или "так и было задумано"?
Здравствуйте,
Ответа пока нет.
Сергей, день добрый,
если такая проблема действительно выявится и будет решаться, есть пожелание:
Добавить меткам контрол HandleMoving регулирующий разрешение на ручное перемещение, а функции SetLabelParams необязательный аргумент для передачи в этот контрол булев значение, по-умолчанию true.
Добрый день,

Мы рассмотрели Ваше пожелание. По итогам его анализа сообщаем Вам, что реализация пожелания признана потенциально целесообразной. Если по результатам дальнейшего анализа, включающего юридические аспекты, анализ на непротиворечивость с общей политикой компании, никаких возражений не возникнет, мы постараемся включить Ваше пожелание в план доработок при выпуске одной из следующих версий нашего ПО.
 
Цитата
Sergey Gorokhov написал:
Здравствуйте!
Информация получена, проблема изучается. Постараемся в ближайшее время дать ответ.
Добрый день.
Описанная в проблема была исправлена в версии 7.1.0 терминала QUIK.
Приносим извинения за причиненные неудобства.
Страницы: 1
Читают тему
Наверх