Здравствуйте! Помогите пожалуйста с WinCC нужно изменять текст в зависимости значения тега. Значение тега INT.
Например: при ТЕГ=10 пишет "Привет"
ТЕГ=11 пишет "Пока"
ТЕГ=12 пишет "Учись"
и все эти надписи должны изменятся в одном объекте!
Помогите пожалуйста!
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
WinCC
Модератор: Глоб.модераторы
-
- освоился
- Сообщения: 208
- Зарегистрирован: 16 дек 2011, 15:13
- Имя: Алексей
- Страна: Россия
- Благодарил (а): 67 раз
- Поблагодарили: 53 раза
WinCC
если Static Text: свойство Text, правой кнопкой Dynamic VBS Action
или IO Field: DataFormat = String , свойство OutputValue, правой кнопкой Dynamic VBS Action
или
Для IO Field "Item.Text" заменить на "Item.OutputValue"
или IO Field: DataFormat = String , свойство OutputValue, правой кнопкой Dynamic VBS Action
или
Код: Выделить всё
Function Text_Trigger(ByVal Item)
dim Tag, value
Set Tag = HMIRuntime.Tags("ТЕГ")
value = Tag.Read
Select case value
Case 10
Item.Text = "Привет"
Case 11
Item.Text = "Пока"
Case 12
Item.Text = "Ученье - свет, а неученых - тьма"
Case Else
Item.Text = "н/д"
End Select
End Function
-
- здесь недавно
- Сообщения: 41
- Зарегистрирован: 06 окт 2016, 16:48
- Имя: Коломоец Сергей Владимирович
- Страна: Украина
- город/регион: Днепр
- Поблагодарили: 1 раз
WinCC
Здравствуйте не получается считать системное время и вывести его на визуализацию. В объекте IO в свойствах выбрал string формат 99:99
и написал скрипт
#include "apdefap.h"
char* _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma code("kernel32.dll")
void GetLocalTime(LPSYSTEMTIME lpSystemtime);
#pragma code()
SYSTEMTIME sysTime;
char szTime[6]="";
GetLocalTime(&sysTime);
sprintf(szTime,"%02d:%02d",sysTime.wHour,sysTime.wMinute);
return szTime;
}
но не пойму куда привязать его не выходит!
и написал скрипт
#include "apdefap.h"
char* _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma code("kernel32.dll")
void GetLocalTime(LPSYSTEMTIME lpSystemtime);
#pragma code()
SYSTEMTIME sysTime;
char szTime[6]="";
GetLocalTime(&sysTime);
sprintf(szTime,"%02d:%02d",sysTime.wHour,sysTime.wMinute);
return szTime;
}
но не пойму куда привязать его не выходит!
-
- освоился
- Сообщения: 248
- Зарегистрирован: 31 янв 2017, 08:44
- Имя: Маркушин Андрей Геннадьевич
- Страна: Россия
- город/регион: Нижегородская обл., Выкса
- Благодарил (а): 19 раз
- Поблагодарили: 64 раза
WinCC
Самое простое решение - использовать внутренний тег для вывода значения в "IO". Привязываете текстовых тег для вывода его значения, а в своём скрипте - записывайте полученное значение (szTime) в этот тег.
Если хотите поизвращаться - есть вариант выводить значение прямо в объект. Но это слегка мммм... хлопотно.
Если хотите поизвращаться - есть вариант выводить значение прямо в объект. Но это слегка мммм... хлопотно.
-
- здесь недавно
- Сообщения: 41
- Зарегистрирован: 06 окт 2016, 16:48
- Имя: Коломоец Сергей Владимирович
- Страна: Украина
- город/регион: Днепр
- Поблагодарили: 1 раз
WinCC
А у Вас нет примера как это реализовать?
Отправлено спустя 2 часа 39 минут 7 секунд:
Я разобрался как с помощью внутреннего тега это сделать. Я же не добавил System info потому и не получалось спасибо за наводку!
Отправлено спустя 2 часа 39 минут 7 секунд:
Я разобрался как с помощью внутреннего тега это сделать. Я же не добавил System info потому и не получалось спасибо за наводку!