ShapeValueFormatting Funktion
Alternativ zur ShapeValueFormatter
Funktion kann eine benutzerdefinierte Formatter-Funktion erstellt werden, um andere Shape Informationen in der Infobar anzuzeigen. Das folgende Beispiel zeigt, wie eine solche Funktion angelegt wird und welche Schnittstellen diese haben muss.
![]() | Die allgemeine Verwendung von Funktionen wird in der HMI-Dokumentation erklärt. |
Nach dem Erstellen der TypeScript Funktion müssen zwei Parameter angelegt werden. Der erste bekommt die Shape-Beschreibung analog zur ShapeData-Eigenschaft übergeben, sowie sie auch vom Control abrufbar ist. Dieser Parameter muss als Typ Any
angelegt werden. Der zweite Parameter bekommt den Shape-Typ analog zur ShapeType-Eigenschaft übergeben. Dieser Parameter muss als Typ TcHmi.Controls.Beckhoff.Vision.ShapeType
angegeben werden. Es ist zu beachten, dass sich diese übergebenen Parameter zum Zeitpunkt der Funktionsausführung aus Timing-Gründen von den Werten der entsprechenden Control-Eigenschaften unterscheiden können.
Die Funktion muss einen Wert vom Typ String
zurückgeben, der dann in der Infobar angezeigt wird. Die Funktion wird immer aufgerufen, wenn sich die Shape-Beschreibung ändert und somit der String in der Infobar aktualisiert werden muss.

Im folgenden Codebeispiel wird die Breite und Höhe zurückgegeben, sofern die Objekte in den Formdaten enthalten sind:
namespace TcHmi {
export namespace Functions {
export namespace TcHmiProject {
export function Formatter(shapeData: any, shapeType: any) {
if (shapeData.stSize != null && shapeData.stSize.fWidth != null &&
shapeData.stSize.fHeight != null) {
return 'w: ' + shapeData.stSize.fWidth.toFixed(0) + ' h: ' +
shapeData.stSize.fHeight.toFixed(0);
}
else {
return '';
}
}
}
}
}
TcHmi.Functions.registerFunctionEx('Formatter', 'TcHmi.Functions.TcHmiProject', TcHmi.Functions.TcHmiProject.Formatter);
Um eine selbst-erstellte Formatter-Funktion zu benutzen, klicken Sie bei der ShapeValueFormat
-Eigenschaft auf den Auswahl-Button und wählen in dem Function Editor ihre soeben erstellte Funktion aus.
