- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Всплывающее модальное окно
Модератор: специалисты Weintek
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Всплывающее модальное окно
Товарищи, подскажите как в панели Weintek вызвать модальное всплывающее окно по событию контроллера. Нужно для отображения сообщений об ошибках поверх рабочего экрана.
В Delta обычно настраивал привязку номера отображаемого экрана регистру контроллера. Когда было нужно присваивал этому регистру значение соответствующее номеру необходимого экрана. У Weintek так можно? Может есть еще какие-нибудь ходы?
В Delta обычно настраивал привязку номера отображаемого экрана регистру контроллера. Когда было нужно присваивал этому регистру значение соответствующее номеру необходимого экрана. У Weintek так можно? Может есть еще какие-нибудь ходы?
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
В моем случае, наверно, лучше воспользоваться объектом "косвенный вызов окна". Чтобы было именно всплывающее окно, а не переключение окон. Спасибо Вам за наводку. А не знаете как можно в контроллере заполучить информацию о том какое окно (имеется ввиду № окна) сейчас открыто?skr писал(а):У Weintek так можно. "Триггеры ПЛК", тип "Сменить окно".
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
Так, следующий вопрос . А как мне увидеть LW9050 в контроллере?skr писал(а):LW9050
-
- здесь недавно
- Сообщения: 29
- Зарегистрирован: 04 окт 2012, 16:38
- Имя: Степанец Александр Васильевич
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Всплывающее модальное окно
Именно в контроллере? Например, сделать из панели modbus-slave и прочитать регистр 9050.Rock87 писал(а): Так, следующий вопрос: . А как мне увидеть LW9050 в контроллере?
Как настроить слейв описано в руководстве в разделе "Configure HMI as a MODBUS Server".
Если панель - мастер, то просто отправить содержимое регистра LW9050 в нужный адрес контроллера с помощью триггера или функции макроса SetDataEx.
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
Панель - мастер. Спасибо, буду пробовать.Irden писал(а):Именно в контроллере? Например, сделать из панели modbus-slave и прочитать регистр 9050.Rock87 писал(а): Так, следующий вопрос: . А как мне увидеть LW9050 в контроллере?
Как настроить слейв описано в руководстве в разделе "Configure HMI as a MODBUS Server".
Если панель - мастер, то просто отправить содержимое регистра LW9050 в нужный адрес контроллера с помощью триггера или функции макроса SetDataEx.
А вот еще вопрос: как запаролить переход на экран? Я так понял, что у weintek можно завести пользователей, которые должны логиниться при входе. Т.е. должно вводиться имя пользователя и пароль и тогда ему доступны соответствующие органы управления. Моя же задача попроще. Никаких пользователей не нужно. Просто, когда жмешь на кнопку перехода на экран появляется окно запроса пароля. Знаешь пароль - переход на соответствующий экран. Не знаешь - остаешься на том, в котором был.
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
Встроенных механизмов не нашел. Пытаюсь решить свою задачу с помощью макросов. Создал окно для ввода пароля. В этом окне объект ввода числа и кнопка "Ок". При нажатии кнопки исполняется макрос, который должен проверять введенное число на равенство жестко заданному паролю.
Как теперь сделать, чтобы если пароль верен, перейти на соответствующий экран? Системное слово LW9050 не работает.
Код: Выделить всё
macro_command main()
short pass
short scr
GetData(pass, "Local HMI", LW, 10, 1)
if pass==1234 then
pass=0
SetData(pass, "Local HMI", LW, 10, 1)
scr=21
SetData(scr, "Local HMI", LW, 9050, 1)
end if
end macro_command
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
Ага, только теперь мне нужно как-то сделать это из макроса.skr писал(а):Переход на экран - это же начало обсуждения в этой ветке.
-
- специалист по WEINTEK
- Сообщения: 208
- Зарегистрирован: 22 мар 2013, 11:52
- Имя: Денис Порфирьев
- город/регион: Санкт-Петербург
- Поблагодарили: 6 раз
Re: Всплывающее модальное окно
Ну так а в чём разница? Тот же SetData вызываете для нужных вам регистров, тех самых, к которым привязаны триггер ПЛК "сменить окно" или прямой/косвенный вызов окна.
-
- здесь недавно
- Сообщения: 81
- Зарегистрирован: 05 сен 2013, 12:29
- Имя: Александр Дмитриевич
- Страна: Россия
- город/регион: Нижний Новгород
- Благодарил (а): 6 раз
Re: Всплывающее модальное окно
Тык, это ведь догадаться нужно было. Спасибо Вам.skr писал(а):Ну так а в чём разница? Тот же SetData вызываете для нужных вам регистров, тех самых, к которым привязаны триггер ПЛК "сменить окно" или прямой/косвенный вызов окна.
-
- здесь недавно
- Сообщения: 36
- Зарегистрирован: 08 июн 2015, 01:00
- Имя: Александр
Re: Всплывающее модальное окно
обратите внимание на эту ошибку viewtopic.php?f=99&t=6497Rock87 писал(а):Товарищи, подскажите как в панели Weintek вызвать модальное всплывающее окно по событию контроллера. Нужно для отображения сообщений об ошибках поверх рабочего экрана.
-
- почётный участник форума
- Сообщения: 3577
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 6 раз
- Поблагодарили: 271 раз
Re: Всплывающее модальное окно
Подскажите пожалуйста, я не совсем понял как пользоваться триггером "Сменить окно". Я пытаюсь задать номер окна из контроллера Сименс S7-1200 v4.0. Настраиваю триггер, пытаюсь связать с какой-нибудь переменной, но он не воспринимает ни Int, ни Byte, ни Usint, ни Dint и т.д. Все типы перепробовал, ни один не могу связать с триггером "сменить окно".skr писал(а):У Weintek так можно. "Триггеры ПЛК", тип "Сменить окно".
Для сравнения: триггер "Управление звуком" легко связывается с переменной типа Bool.
-
- специалист по WEINTEK
- Сообщения: 208
- Зарегистрирован: 22 мар 2013, 11:52
- Имя: Денис Порфирьев
- город/регион: Санкт-Петербург
- Поблагодарили: 6 раз
Re: Всплывающее модальное окно
Чтобы триггер работал, нужно помещать в регистр триггера значение с номером экрана, но не меньше 10.
Не подскажу как в S7, а в модбасе триггер сохраняет номер текущего окна в следующий за триггером регистр. Это поведение отключается битом LB9017.
Не подскажу как в S7, а в модбасе триггер сохраняет номер текущего окна в следующий за триггером регистр. Это поведение отключается битом LB9017.