-> Hier kostenlos registrieren
Hallo,
ich versuche mich seit Stunden an einem Script. Bin am verzweifeln.
Ich bin absoluter Abfänger......
Hoffentlich kann mir jemand von euch weiterhelfen.
Ich versuche in einem Script ein Array 0..999 typ Byte ("DB_Test_Byte"),
in einer Schleife Byteweise, mit einer Maske bestimmte Bit´s auszuwerten.
Dementsprechend möchte ich die Farbe eines Rechtecks beeinflussen.
Ich habe (später) 330 Rechtecke auf einem Bildschirm liegen die animiert werden sollen.
20 Rechtecke (Rechteck_0 - Rechteck_20) sind am Grundbild angelegt.
PLC SIM läuft. RT bringt keinen Fehler. Leider ändert sich die Farbe nicht, wenn ich das Script ausführe.
Im DB sind einige Byte auf 00000001 gesetzt (im Bereich Array Byte 0-20).
Hier mein Versuch:
Sub Test()
Dim Zaehler
Dim maske
Dim Rechteck_
Zaehler = 0
maske = 1
For Zaehler = 0 To 20 Step 1
If (DB_Test_Byte(Zaehler)) And maske Then
HmiRuntime.Screens ("Grundbild").ScreenItems("Rechteck_"&Zaehler).backcolor = vbGreen
Zaehler = Zaehler + 1
End If
Next
End Sub
Ich denke, dass ich das Array falsch anspreche (DB_Test_Byte(Zaehler)).
Danke
ebene10
ich versuche mich seit Stunden an einem Script. Bin am verzweifeln.
Ich bin absoluter Abfänger......
Hoffentlich kann mir jemand von euch weiterhelfen.
Ich versuche in einem Script ein Array 0..999 typ Byte ("DB_Test_Byte"),
in einer Schleife Byteweise, mit einer Maske bestimmte Bit´s auszuwerten.
Dementsprechend möchte ich die Farbe eines Rechtecks beeinflussen.
Ich habe (später) 330 Rechtecke auf einem Bildschirm liegen die animiert werden sollen.
20 Rechtecke (Rechteck_0 - Rechteck_20) sind am Grundbild angelegt.
PLC SIM läuft. RT bringt keinen Fehler. Leider ändert sich die Farbe nicht, wenn ich das Script ausführe.
Im DB sind einige Byte auf 00000001 gesetzt (im Bereich Array Byte 0-20).
Hier mein Versuch:
Sub Test()
Dim Zaehler
Dim maske
Dim Rechteck_
Zaehler = 0
maske = 1
For Zaehler = 0 To 20 Step 1
If (DB_Test_Byte(Zaehler)) And maske Then
HmiRuntime.Screens ("Grundbild").ScreenItems("Rechteck_"&Zaehler).backcolor = vbGreen
Zaehler = Zaehler + 1
End If
Next
End Sub
Ich denke, dass ich das Array falsch anspreche (DB_Test_Byte(Zaehler)).
Danke
ebene10
Zuletzt bearbeitet von einem Moderator: