Показано с 1 по 8 из 8

Тема: На элементе текст установить другой цвет заливки при изменении сигнала логики

  1. #1

    Question На элементе текст установить другой цвет заливки при изменении сигнала логики

    Здравствуйте грамотные люди!
    Как в визуализации в элементе текст произвести изменение цветовой заливки элемента при изменении в программе логического сигнала (0 или 1). В настройке на элемент есть параметр цветовой заливки нормальный и аварийный. По умолчанию установлен белый и красный соответственно. На аварийный сигнал установил булевый логический сигнал на входе. Образно появился в логике программы сигнал 1 и текст с белой заливкой элемента текст будет залит красным цветом. Но при компиляции указано об ошибке не возможности применения в этом управляющем сигнале булевой логики.
    А как тогда произвести смену замены цветовой заливки на другой цвет. Или тут только регистры WORD применимы, а как это увязать при заливке новым цветом?
    Заранее Большое Спасибо за грамотный ответ!

  2. #2
    Пользователь Аватар для murdemon
    Регистрация
    03.02.2014
    Адрес
    Санкт-Петербург
    Сообщений
    844

    По умолчанию

    Там Dword тип 16#AABBRRGG , где AA прозрачность, R G B красный , зеленый, синиий от 0 до FF.
    Dmitriy Murashov
    SPS Software Engineer Automation Engineering RUS

  3. #3
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,252

    По умолчанию

    Цитата Сообщение от AmpeR3 Посмотреть сообщение
    Здравствуйте грамотные люди!
    Как в визуализации в элементе текст произвести изменение цветовой заливки элемента при изменении в программе логического сигнала (0 или 1). В настройке на элемент есть параметр цветовой заливки нормальный и аварийный. По умолчанию установлен белый и красный соответственно. На аварийный сигнал установил булевый логический сигнал на входе. Образно появился в логике программы сигнал 1 и текст с белой заливкой элемента текст будет залит красным цветом. Но при компиляции указано об ошибке не возможности применения в этом управляющем сигнале булевой логики.
    А как тогда произвести смену замены цветовой заливки на другой цвет. Или тут только регистры WORD применимы, а как это увязать при заливке новым цветом?
    Заранее Большое Спасибо за грамотный ответ!
    Добрый день.
    Булевый логический сигнал надо привязывать к параметру Переменные цвета/Переключить цвет:

    10-01-2020 6-49-49.png

  4. #4

    По умолчанию

    Очередной раз большое спасибо за правильные и понятные ответы Евгению Кислову!!!

  5. #5

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Добрый день.
    Булевый логический сигнал надо привязывать к параметру Переменные цвета/Переключить цвет:

    10-01-2020 6-49-49.png
    Подскажите, как можно реализовать изменение цвета, если требуется больше 2 вариантов. Задача: отображать температуру. Норма - зеленый фон. Незначительное превышение - желтый. Аварийное - красный.

  6. #6

    По умолчанию

    Цитата Сообщение от AlekseyR Посмотреть сообщение
    Подскажите, как можно реализовать изменение цвета, если требуется больше 2 вариантов. Задача: отображать температуру. Норма - зеленый фон. Незначительное превышение - желтый. Аварийное - красный.
    Если разберетесь:
    121212.png

    Но это ПЛК210

  7. #7

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Если разберетесь:
    121212.png

    Но это ПЛК210
    Большое спасибо! Получилось. Цвета подобрал, но пока не понял, как делать осознано.
    IF xFirst = FALSE THEN
    rTempG := 25.0;
    rTempY := 75.0;
    rTempR := 100.0;
    xFirst := TRUE;
    dwColor := 16#FFFFFFFF ;
    END_IF

    IF xChose = FALSE THEN

    IF rTemp < rTempG THEN
    dwColor := 16#FFFFFFFF ; // белый
    END_IF

    IF rTemp >= rTempG AND rTemp < rTempY THEN
    dwColor := 16#FF00FF00 ; // зеленый
    END_IF

    IF rTemp >= rTempY AND rTemp < rTempR THEN
    dwColor := 16#FFFFFF80 ; // желтый
    END_IF

    IF rTemp >= rTempR THEN
    dwColor := 16#FFFF0000 ; // красный
    END_IF

    END_IF

  8. #8

    По умолчанию

    Ну по идее всё должно работать. Сравнение температуры из if xchose выдерните. Возможно вы в это условие не заходите. И лучше делать через else if, похоже у вас всегда только одно условие выполняется, последнее, например.

    PS сравнение отделите скобками от and и or, бывает это условие первым считается..
    Последний раз редактировалось МихаилГл; Вчера в 02:35.

Похожие темы

  1. Ответов: 6
    Последнее сообщение: 24.09.2018, 07:21
  2. Ответов: 6
    Последнее сообщение: 04.01.2017, 13:14
  3. Цвет заливки
    от Victor721 в разделе Master SCADA 3
    Ответов: 6
    Последнее сообщение: 23.03.2016, 16:46
  4. Ответов: 4
    Последнее сообщение: 09.10.2015, 13:20
  5. Ответов: 4
    Последнее сообщение: 12.08.2015, 15:07

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •