ylan писал(а):Здравствуйте! Панель еМТ3070А. Ткните, плиз, носом, как создается окно с полосой прокрутки. Спасибо.
Добрый день. Такой возможности нет, можно только имитировать прокрутку, меняя окна.
ylan писал(а):Здравствуйте! Панель еМТ3070А. Ткните, плиз, носом, как создается окно с полосой прокрутки. Спасибо.
gozzzzz писал(а):Что-то не могу разобраться как сделать окно, защищенное паролем. Требуется при каждом нажатии на функциональную кнопку показывать окно с просьбой ввести пароль. Если пароль верный, то разрешить переход к защищенному окну. Список пользователей лучше даже не показывать. Только запрашивать пароль. Должны же быть встроенные средства! Если я ставлю на функциональную кнопку ограничение по доступу, допустим только Класс А, то нажатие на кнопку не приводит к открытию окна, т.к. не была выполнена авторизация. Как пройти авторизацию - не знаю. Да и не особо это хотелось бы, т.к. выбор пользователя в этом проекте - это лишнее. Заранее спасибо.
den_po писал(а):Пример работы с паролем
gozzzzz писал(а):Вот как я пытаюсь сделать сейчас : в окне "А" функциональная кнопку показывает всплывающее окно с вводом пароля. В окне пароля есть 2 кнопки - ОК и Отмена. Отмена просто закрывает окно. Кнопка ОК запускает макрос, который устанавливает бит в одном из регистров панели. Но как при этом закрыть всплывающее окно? Ведь кнопка поддерживает только одно действие.
Evgen писал(а):Здравствуйте. На этом форуме уже задавали вопрос, о том, как открывать окно по изменению бита в памяти контроллера.
Ответ:
“По изменению бита в памяти контроллера можно вызвать макрос, который будет открывать нужное окно. Делается это с помощью ПЛК-триггера.”
Хочу попросить пример кода такого макроса. Никак не могу понять, как из макроса можно вызывать открытие нужного окна?
Панель: Weintec MT6070iP
Контроллер: Delta DVP32ES200T
Спасибо.
int WinNum=10//номер окна
SetData(WinNum, "Local HMI", LW, 1, 1)//записать WinNum в LW-1
int WinNum
GetData(WinNum, "Local HMI", LW, 2, 1)//записать LW-2 в WinNum
SetData(WinNum, "Local HMI", LW, 1, 1)//записать WinNum в LW-1
Evgen писал(а):Хочу попросить пример кода такого макроса. Никак не могу понять, как из макроса можно вызывать открытие нужного окна?
macro_command main()
unsigned short key
unsigned short cls = 0
// передаваемые параметры макроса
unsigned short addr_wndtrigger = 130
unsigned short addr_wndid = 131
unsigned short addr_indirwnd = 132
// адрес пароля
unsigned short addr_password = 900
unsigned short wndtrigger // LW триггера ПЛК, переключающего окна
unsigned short wndid // ID окна, которое надо показать в случае правильности пароля
unsigned short indirwnd // LW элемента Inderect Wnd, в который надо записть 0 для закрытия popup окна
GetData(wndtrigger, "Local HMI", LW, addr_wndtrigger, 1)
GetData(wndid, "Local HMI", LW, addr_wndid, 1)
GetData(indirwnd, "Local HMI", LW, addr_indirwnd, 1)
GetData(key, "Local HMI", LW, addr_password, 1)
if (key == 12345) then
key = 1
else
key = 0
end if
SetData(cls, "Local HMI", LW, indirwnd, 1)
SetData(cls, "Local HMI", LW, addr_password, 1)
if (key == 1) then
SetData(wndid, "Local HMI", LW, wndtrigger, 1)
end if
end macro_command
Сейчас этот форум просматривают: Google [Bot] и гости: 4