Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.07.2019, 15:40   #31
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Ошибка в первой строчке. Вы читает то, что пишите?

Код:
int sign;
sign[1] = makeDynInt(a,b,c,d);
Объявить целое и присвоить его биту массив... никаких вопросов не возникает?

Посмотрел я синтаксис контрола и вообще все проще делается. И да length не так получается у дин. массивов...

Вам надо написать фактически три условия
Код:
if (dynContains(mRed, 1) > 0)
  setColor('Red');
else if (dynContains(mYellow, 1) > 0)
  setColor('Yellow');
else if (dynContains(mGreen, 1) > 0)
  setColor('Green');
else
  setColor('White');

Код:
void EP_setBackColorCB (string dpSource1, bool a, string dpSource2, bool b, string dpSource3, bool c,
                        string dpSource4, bool d, string dpSource5, bool e, string dpSource6, bool f,
                        string dpSource7, bool g, string dpSource8, bool k, string dpSource9, bool l,
                        string dpSource10, bool m)

{   
    dyn_int sign1,sign2,sign3;
    sign1 = makeDynInt(a,b,c,d);
    sign2 = makeDynInt(e,f,g);
    sign3 = makeDynInt(k,l,m);
 // mRed = {a,b,c,d}
 // mYellow = {e,f,g}
//  mGreen = (k,l,m) 
//  bool var = false;
  //bool var = false;
  
  
if (dynContains(sign1, 1) > 0)
setValue("", "backCol", "red");
else if (dynContains(sign2, 1) > 0)
 setValue("", "backCol", "yellow");
else if (dynContains(sign3, 1) > 0)
  setValue("", "backCol", "green");
else
   setValue("", "backCol", "write");
        

}
Так получается?
Arturlem вне форума Ответить с цитированием
Старый 18.07.2019, 15:43   #32
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,694
По умолчанию

Ну так запустите и проверьте... Только write явно не цвет.
p51x вне форума Ответить с цитированием
Старый 18.07.2019, 15:47   #33
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Ну так запустите и проверьте... Только write явно не цвет.
Запускал) Не работает
Arturlem вне форума Ответить с цитированием
Старый 18.07.2019, 15:49   #34
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,694
По умолчанию

Что значит не работает? Не компилится? Выставляет не тот цвет? Вы дебагом ваши параметры и массивы посмотрели?
p51x вне форума Ответить с цитированием
Старый 18.07.2019, 15:55   #35
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Что значит не работает? Не компилится? Выставляет не тот цвет? Вы дебагом ваши параметры и массивы посмотрели?
Запускается. Выставляется черный цвет
Arturlem вне форума Ответить с цитированием
Старый 18.07.2019, 15:59   #36
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,694
По умолчанию

И? У вас черный цвет выставляется в двух случаях, которые к этому коду отношения не имеют. Поменяйте один черный на голубой и определите без дебага, что сломалось.
p51x вне форума Ответить с цитированием
Старый 18.07.2019, 16:07   #37
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
И? У вас черный цвет выставляется в двух случаях, которые к этому коду отношения не имеют. Поменяйте один черный на голубой и определите без дебага, что сломалось.
Та, часть, где идут два случая черного цвета - связь с симулятором там.
При трех сигналах - работало. Я поменял цвета и посмотрел. Реагирует на эту часть
Код:
 if( !dpExists( "System1:SP1.SP1:_online.._value") || !dpExists( "System1:SP2.SP2:_online.._value") || !dpExists( "System1:SP3.SP3:_online.._value") 
       || !dpExists( "System1:SP4.SP4:_online.._value") || !dpExists( "System1:SP5.SP5:_online.._value") || !dpExists( "System1:SP6.SP6:_online.._value") ||
       !dpExists( "System1:SP7.SP7:_online.._value")|| !dpExists( "System1:SP8.SP8:_online.._value")|| !dpExists( "System1:SP9.SP9:_online.._value") ||
       !dpExists( "System1:SP10.SP10:_online.._value"))
  {
    setValue("", "color", "black");
    return;
  }
Arturlem вне форума Ответить с цитированием
Старый 18.07.2019, 16:10   #38
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,694
По умолчанию

Значит какого-то сигнала нет...
p51x вне форума Ответить с цитированием
Старый 18.07.2019, 16:19   #39
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Значит какого-то сигнала нет...
Я скопипастил ваш код в свой, который работал, он работает идеально)
буду разбираться с сигналами сейчас. Спасибо Вам большое! Извините за потраченные нервы)
Arturlem вне форума Ответить с цитированием
Старый 19.07.2019, 11:21   #40
Arturlem
Пользователь
 
Регистрация: 17.07.2019
Сообщений: 24
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Значит какого-то сигнала нет...
Цитата:
Сообщение от p51x Посмотреть сообщение
Значит какого-то сигнала нет...
А реально в онлайне режиме делать запись в журнале событий?
Например, я нажимаю на объект и открывается окно, где происходит запись событий .
Если выбираю первый сигнал, чтобы велась запись, что выбран single point1 - красный?
Arturlem вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сигналы из вне JohnSh C# (си шарп) 2 10.11.2016 21:38
QT - сигналы Базиля Помощь студентам 13 06.10.2013 19:39
Сигналы Yelisey Общие вопросы C/C++ 1 08.05.2011 17:54
сигналы в Qt! marselik Qt и кроссплатформенное программирование С/С++ 1 24.11.2010 23:29