WinCC C# Click Hintergrundfarbe

macter

Level-1
Beiträge
19
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich versuche im Ereignis Mausklick ein C-Skript zu schreiben welche in Abhängigkeit des BackColors eines bestimmten Statischer-Text einen Wert setzen soll.

Ich habe es versucht aber leider klappt es nicht.

Vielleicht könnte mir einer dabei helfen ?

Code:
#define Schritt "Bad1"                         // Schritt Wert

long int BackColor;

BackColor = GetBackColor("MJ_H004_B84_Bad01_Alternativ.pdl","Schritt1");    //Return-Type: long int




if (BackColor = 255)
{
SetTagBit("Bad1",1);
}
 
Wie immer ist zunächst die Angabe wichtig, in welchem Programmiersystem und welcher Version Du programmierst.
Wie immer: "klappt nicht" ist keine informative Problembeschreibung.

Passiert überhaupt was bei Deinem Skript? Erhältst Du irgendwo Fehlermeldungen?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald,

ich programmier in WinCC 7.5 im C-Skript.
Ich bekomme keine Fehlermeldung. Beim Klick passiert nichts. Ich hatte mir im EA Feld die Variable anzeigen lassen. Sie verändert sich nicht. Mir ist es ein Rätsel.
Ich hatte es auch schon in VBS versucht komme da aber genau so weit.

Ich weiß einfach nicht weiter.

Hintergrundfarbe in Abhängigkeit einer Variable in VBS oder C-Skript war kein Problem 😌
 
So jetzt habe ich was hinbekommen ob das die sauberste Lösung ist weiß ich nicht aber es funktioniert.


C:
#include "apdefap.h"
void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,  char*  value)
{
long int bk_color;                //Auswertung Farbcode
long int CO_Grün = 65280;                //Farbcode Grün
long int CO_Rot = 255;                //Farbcode Rot
long int CO_Gelb = 64255;                //Farbcode Gelb
float Temperatur = GetTagFloat("H4_B84_Bad01_Temp");    //Tag1
float Weiter = GetTagFloat("Bad1");            //Tag2               

if ((Weiter < 1) && (Temperatur <= 0) )            //Wenn Tag1 < 1 und Tag2 <=0 ist
    {
    bk_color = CO_Gelb;            // Hintergrundfarbe Gelb
    }
else
    if ((Weiter >= 1) && (Temperatur <= 0) )        //Wenn Tag1 >= 1 und Tag2 <=0 ist           
        {
        bk_color = CO_Rot;        //Hintergrundfarbe Rot
        }
    else
        {
        bk_color = CO_Grün;        //Sonst Hintergrundfarbe Grün
        }
SetBackColor(lpszPictureName,"Schritt2",(long int)bk_color);    //Schreibt Farbcode in das Objekt
}
 
Zurück
Oben