Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version » Вопрос по всплывающим окнам

   
Автор / Author Тема / Topic: Вопрос по всплывающим окнам
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день! Планируется станция на 150 стрелок, у каждой стрелки есть положение «плюс» и «минус», за каждое из положение отвечает своя картинка, по клику на которую высвечивается список из операций (Если стрелка в «+», то нужна команда на перевод ее в «-» и соответственно наоборот.) У каждой стрелки свои переменные, которые меняются в зависимости от положения, поэтому я увидела только вариант с 2 всплывающими окнами на 1 стрелку, так как по нажатию на текст во всплывающем окне должно записываться то или иное число в переменную, привязанную к этой стрелке. и так по каждой. Подскажите как лучше решить данную проблему.

Также промаргивают элементы в профайлере (видео отправлено на почту техподдержки).

Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Дополню вопрос. Всплывающее окно также должно закрываться не по крестику, а после того, как послана команда из всплывающего окна и окно должно открываться рядом с объектом, на который кликнули мышью. В случае с перепривязкой аргументов экрана реализуемы ли данные функции?
Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Если необходимо реализовать именно меню, то наилучшее решение - Графический Объект со скрываемыми слоями. Однако, его можно закрыть либо по крестику, либо через меню (ПКМ по постоянно видимой части Графического Объекта).
Так же это решение можно тиражировать по проекту, за счет использования одного Графического Объекта.
Это оптимальное решение.

Можно использовать одно всплывающее окно с перепривязкой аргументов. При нажатии на графический элемент должна посылаться команда на перепривязку и вызов всплывающего экрана. С помощью программы можно контролировать местоположение всплывающего экрана (Для всплывающих экранов (см. Задание параметров графического экрана ): атрибуты (242, X_pos) и (243, Y_pos) индицируют и задают положение экрана соответственно по осям X и Y. Для изменения положения всплывающего экрана надо задать (изменить) (242, X_pos) и (243, Y_pos) и установить (0, R)=4 в канале вызова экрана. )
Всплывающее окно закрывается по "крестику". Можно с помощью программы реализовать принудительное повторное открытие всплывающего окна, до тех пор, пока не будет нажата "правильная" кнопка закрытия экрана.

Сообщения / Posts 17110 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день! А могу ли я вас попросить прислать мне пример с вызовом всплывающего окна. Например если 2 кнопки нажато - появляется всплывающий экран.
Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.
В реализации какой части описанной задачи у Вас возникают затруднения?

Настройка экрана как всплывающего описана в "Справочной Системе - Разработка графического интерфейса - Операции с графическими экранами - Задание параметров графического экрана"

Как принудительно вызвать экран (в том числе всплывающий) описано в "Справочной Системе - Разработка графического интерфейса - Операции с графическими экранами - Особенности вызова графического экрана"

Осталось только с помощью шаблона программы реализовать формирование команды вызова экрана. Программу Вы можете разработать на любом из поддерживаемых языков программирования. Подробнее в разделе "Программирование алгоритмов".
Так же рекомендую изучить "Быстрый старт - Часть 2 - Написание программ"

Сообщения / Posts 17110 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
С написанием программы проблем не возникает. Возникает проблема с "Атрибут (0, R) канала вызова экрана задает следующие действия:
1 – сделать экран невидимым;
2 – сделать экран видимым;
8 – сделать экран видимым с принудительным обновлением.
4 – переместить всплывающий экран." Т.е. с установкой значений атрибута. Сделала проект для примера: 2 кнопки, по нажатию на обе кнопки зажигается индикатор, после чего должно вылезти всплывающее окно. Создаю в программе аргумент типа OUT, привязываю его к атрибуту 2 (входное значение) канала CALL. Верно? Только всплывающее окно сразу при запуске профайлера появляется, а не когда действия с кнопками и индикатором произведены. В чем может быть проблема?

Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
свойства шаблона экрана-всплывающее окно-показывать при старте
Сообщения / Posts 807 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Показывать при старте стоит False. При запуске профайлера окно на секунду всплывает и закрывается, в дальнейшем открывается только после нажатия кнопок, как и должно работать.
Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by guseva:
Сделала проект для примера: 2 кнопки, по нажатию на обе кнопки зажигается индикатор, после чего должно вылезти всплывающее окно. Создаю в программе аргумент типа OUT, привязываю его к атрибуту 2 (входное значение) канала CALL. Верно? Только всплывающее окно сразу при запуске профайлера появляется, а не когда действия с кнопками и индикатором произведены. В чем может быть проблема?

Верно. Привязка выходного аргумента программы типа OUT должна быть к атрибуту Входное значение канала Call.Screen.

Вызов всплывающего экрана на старте возможен по ряду причин.
1. Nico прав, в настройках шаблона экрана (где задавалось свойство Всплывающий экран) может быть взведен флаг "Показывать при старте"
2. У канала Call.Screen при редактировании настроено значение на старте и флаг "отработать" (откройте канал Call.Screen на редактирование и проверьте флаг "Отработать" и значение "На старте").
3. Программа написана так, что при запуске проекта формируется команда на вызов всплывающего экрана (отключите программу и если проблема исчезнет, то дело именно в программе)
4. Каждый компонент имеет свой ID, в том числе и шаблоны экранов. Шаблону экрана с наименьшим ID (т.е., созданный раньше остальных) присваивается свойство "стартовый" (принудительно вызывается при запуске проекта). Что бы избежать этой ситуации, откройте канал Call.Screen статического экрана на редактирование и у него выставите флаг "отработать" и значение 2 на старте.

Сообщения / Posts 17110 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо, со всплывающим все получилось. Еще есть вопрос, связанный с таймером и программой на языке FBD [Улыбка / Smile] Те же две кнопки, после нажатия на обе на экране появляется линия, после появления линии через какое-то время зажигается индикатор, с проверкой условия, что первый индикатор зажегся, включается второй. Таймер на языке FBD сделала, зажигание второго индикатора на ST. как в этом случае связывать аргументы? В программе ST обрабатывается нажатие кнопок, программой FBD отрабатывается таймер, а далее в ST работа со вторым индикатором уже не идет.
Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
guseva
Junior Member / Новичок
Участник № / Member № 9189


Icon 1 отправлено / posted      Профиль для / Profile for guseva           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день! Вопрос с таймером и FBD снят, разобралась. Спасибо!
Сообщения / Posts 17 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день!
По имеющемуся описанию, ошибка может быть в привязках между каналами вызова программ.

Привязывать необходимо выходной аргумент программы_А к входным аргументам программы_Б.

Если Вам необходимо написать код программы на двух языках, то можно реализовать функцию (написанную на одном языке) в теле программы (написанной на другом).

Сообщения / Posts 17110 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2