Pages
ButtonScript
Die ButtonScript-Steuerung ist ein anpassbares Widget, das überall innerhalb der HMI-Seite mit dem Seiteneditor platziert werden kann. Wie der Name schon andeutet, ist diese Steuerung darauf ausgelegt, Skripte als Reaktion auf verschiedene Lebenszyklusereignisse auszuführen und bietet so eine flexible Möglichkeit, Logik direkt aus der Schnittstelle auszulösen.
Eigenschaften
Etikett
Dies definiert den auf dem Button angezeigten Text. Sie dient als benutzerorientierte Bildunterschrift und kann den Zweck oder die Aktion des Buttons beschreiben.
Bildort
Spezifiziert ein Hintergrundbild für den Button mithilfe einer URL. Dies ermöglicht eine visuelle Anpassung über das Standardetikett hinaus und verbessert das Interface-Design.
Skript am Laden
Dieses Skript läuft automatisch, wenn die ButtonScript-Steuerung auf dem Bildschirm geladen wird. Sie ist nützlich, um Werte zu initialisieren oder Bedingungen vor der Benutzerinteraktion vorzubereiten.
Skript
Dies ist das Haupt-Aktionsskript, das ausgeführt wird, wenn der Button angeklickt wird. Es kann einen oder mehrere vordefinierte Befehle enthalten, um Variablen zu steuern, Operationen auszulösen oder andere Teile der HMI zu beeinflussen.
Drehbuch schließt sich
Dieses Skript wird ausgeführt, wenn die ButtonScript-Steuerung aus der Ansicht entfernt wird (z. B. während eines Seitenwechsels). Es kann zum Aufräumen, zum Abmelden von Variablen oder zum Zurücksetzen von Werten verwendet werden.
ButtonScript-Befehlsreferenz
Jeder Befehl kann innerhalb der Eigenschaften Script, Script on Load oder Script on Close der buttonscript-Steuerung verwendet werden.
Verfügbare Befehle
| Kommando | Beschreibung |
|---|---|
elementById('id') |
Gibt eine interne Objektreferenz auf ein Widget mit der gegebenen ID zurück. |
set(value) |
Setzt den bereitgestellten Wert auf das gegebene Element (unterstützt derzeit nur outputbasic). |
append(value) |
Fügt dem aktuellen Textinhalt eines outputbasic -Elements eine Zeichenkette hinzu. |
appendRangeCheck(value, maxRef, minRef) |
Fügt ein Element nur einen Wert hinzu, wenn es innerhalb eines definierten Min-Max-Bereichs bleibt. Referenzen können IDs oder buchstäbliche Zahlen sein. |
checkRange(minRef, maxRef, targetId) |
Deaktiviert eine Ziel-Taste, wenn der Elementwert außerhalb des Min-Max-Bereichs liegt. |
truncate(numChars) |
Es wird die letzten N Zeichen aus einem outputbasic -Element abgeschnitten. |
getValue() |
Erhält den Wert von einem outputbasic-Element. |
setWs(value, connectionId, path) |
Sendet einen Wert an das Backend über WebSocket (verwendet globale oder explizite Verbindung und Pfad). |
setWsOnPosition(value, mapName, connectionId, path) |
Sendet den Wert an alle Positionen, wenn er auf Index 0 ist, ansonsten verwendet er den lokalen Seitenindex. |
evalValue('javascript') |
Führt Inline-JavaScript-Code mit dem aktuellen Wert als this.value aus. |
changeSign() |
Multipliziert den numerischen Wert eines Elements mit -1. |
closePopup() |
Das löst das Schließen des aktuellen Popups aus. |
getCurrentPageIndex() |
Gibt den aktuellen Seitenindex basierend auf der URL des Routers zurück. |
goToPage(true, pageId, index, forceProceed) |
Navigiert zu einer anderen Route in der App (/home/pageId). |
navigateToPageIndex(pageIndex, mapName, pageId, forceProceed) |
Navigiert mit Index und mapName (dynamischer als goToPage). |
submitContainer() |
Löst die Formulareinreichung des aktuellen Widget-Containers aus. |
submitAll() |
Triggert die Formulareinreichung für alle Widgets. |
sleep(ms, forceProcess) |
Pausiert die Skriptausführung um ms Millisekunden (kann optional true zurückgeben). |
factor(value, multiplier) |
Multipliziert den Wert mit der gegebenen Zahl. |
Wichtiger Hinweis: Die Befehlszeile muss immer mit einem Semikolon enden;
✅ Beispiele
Beispiele 1: Anschlusswert und Prüfbereich
elementById(display_element) .append(8) .checkRange(display_min, display_max, display_submit);
Beispiele 2: Value abschneiden und Kontrollbereich
elementById(display_element) .truncate(1) .checkRange(display_min, display_max, display_submit);
Beispiele 3: Einstellung des Wertes bei WS Connection und Schließen des Popups
Die erste Zeile erhält den Wert, der in "display_element" angezeigt wird (id der outputbasic-Menge in den Elementeigenschaften). Und dann wird es auf die Verbindungsbindung gesetzt.
Die zweite Zeile schließt das Popup.
elementById(display_element).getValue().setWs(); closePopup();