1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Изменение цвета фона кнопки через глобальный скрипт

Модератор: Глоб.модераторы

Ответить

Автор темы
Dmitriy1983
здесь недавно
здесь недавно
Сообщения: 94
Зарегистрирован: 29 окт 2017, 19:52
Имя: Дмитрий
Благодарил (а): 5 раз
Поблагодарили: 18 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение Dmitriy1983 »

Добрый день.Работаю в WinCCProf17. Вопрос в следующем.. Имеется стартовый экран «Screen», в нем есть два окна «PW1» и «PW2». В этих окнах общий экран «Screen_M». В «Screen_M», есть окно «SW1», в этом окне показывает экран «UpTB». На экране «UpTB» есть кнопка «Button_1». Как можно через глобальный Cи скрипт изменить задний фон этой кнопки именно на окне «PW1»? Как узнать какой путь у этой кнопки? Разрабатываю проект на 2 монитора, в WinCC7.5 это делается через Wizard. Тут приходится ручками. Спасибо.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

makesstr
освоился
освоился
Сообщения: 222
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 38 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение makesstr »

Жесть, а зачем именно таким образом это делать когда есть человеческие способы?
WinCC 7.4 SP1 Upd15, Step5.6

Автор темы
Dmitriy1983
здесь недавно
здесь недавно
Сообщения: 94
Зарегистрирован: 29 окт 2017, 19:52
Имя: Дмитрий
Благодарил (а): 5 раз
Поблагодарили: 18 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение Dmitriy1983 »

Например?

makesstr
освоился
освоился
Сообщения: 222
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 38 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение makesstr »

Привязкой значения тега к Background Colorэтих кнопок через Dynamic Dialog. По крайней мере в WinCC7.0-7.5
WinCC 7.4 SP1 Upd15, Step5.6

Автор темы
Dmitriy1983
здесь недавно
здесь недавно
Сообщения: 94
Зарегистрирован: 29 окт 2017, 19:52
Имя: Дмитрий
Благодарил (а): 5 раз
Поблагодарили: 18 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение Dmitriy1983 »

Если это было в WinCC7.0-7.5 , я бы даже не спрашивал. Как и писал ранее это все делается через "OS Progect Editor". И я не хочу привязываться к тэгу. И если я привяжу к тэгу, то у меня на 2-х мониторах будет меняться кнопка если, я поменяю на одном экране. А они у меня должны быть независимые. И вопрос у меня был (Как можно через глобальный Cи скрипт изменить задний фон этой кнопки именно на окне «PW1»). Ну или на VBS.

makesstr
освоился
освоился
Сообщения: 222
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 38 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение makesstr »

Если Screen.PDL является стартовой картинкой
[+]
Dim PW1, SW1
Set PW1= HMIRuntime.Screens("Screen").ScreenItems("PW1")
Set SW1= PW1.Screen.ScreenItems("SW1")
If HMIRuntime.Tags("bool1").Read = 1 Then
SW1.Screen.ScreenItems("Button_1").BackColor = RGB(255,255,255)
End if
WinCC 7.4 SP1 Upd15, Step5.6

Автор темы
Dmitriy1983
здесь недавно
здесь недавно
Сообщения: 94
Зарегистрирован: 29 окт 2017, 19:52
Имя: Дмитрий
Благодарил (а): 5 раз
Поблагодарили: 18 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение Dmitriy1983 »

Проверил, не работает. Почему PW1.Screen? В окне PW1 находится Screen_M.PDL. Но я и так пробовал, все равно не работает.
И кнопка "Button_1" находится на UpTB.PDL

makesstr
освоился
освоился
Сообщения: 222
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 38 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение makesstr »

Странно у меня работает, проверил.
PW1.Screen потому что такой скрипт для вложенных картинок в окна, это не связано с названием картинки "Screen_M", просто совпало.
WinCC 7.4 SP1 Upd15, Step5.6

Автор темы
Dmitriy1983
здесь недавно
здесь недавно
Сообщения: 94
Зарегистрирован: 29 окт 2017, 19:52
Имя: Дмитрий
Благодарил (а): 5 раз
Поблагодарили: 18 раз

Изменение цвета фона кнопки через глобальный скрипт

Сообщение Dmitriy1983 »

Разобрался, у меня заработало вот так:
Dim Obj
Set Obj = HMIRuntime.Screens("Screnn.PW1:Screen_M.SW1:UpTB")
Obj.ScreenItems("Button_1").BackColor=RGb(1,1,1)

Отправлено спустя 21 минуту 15 секунд:
И Ваш скрипт тоже заработал, не так переписал. Спасибо за помощь!
:thankyou:
Ответить

Вернуться в «WinCC»