Controls > Advanced Controls > Eingaben und Ausgaben für skriptfähige Steuerelemente
Eingaben und Ausgaben für skriptfähige Steuerelemente
Die Eingaben und Ausgaben für alle skriptfähigen PTC Mathcad Prime Steuerelemente weisen die folgenden Eigenschaften auf. Steuerelemente können jeden gültigen PTC Mathcad Prime Datentyp als Eingabe verwenden. Diese Daten können Skalare, Arrays und Zeichenfolgen oder andere Ausdrücke sein, die einen dieser Werte erzeugen.
Die Indexierung von Eingabe- und Ausgabevariablen beginnt bei 0. Eingaben und Ausgaben sind Eigenschaften und Methoden zugeordnet. Indem Sie die Ausgaben eines Steuerelements als Eingaben für ein anderes Steuerelement verwenden, können Sie mehrere Steuerelemente in dasselbe Arbeitsblatt einschließen. Indem Sie einem Steuerelement Eingabe- und Ausgabewerte zuordnen, definieren Sie seine Position in der Berechnungsreihenfolge des Arbeitsblatts und geben an, dass bei Änderung der Eingabewerte eine Neuberechnung durchgeführt werden soll. Außerdem wird dem Arbeitsblatt dadurch mitgeteilt, wann die Ausgabewerte aktualisiert werden sollen. Daher ist es wichtig, jedem Steuerelement, das diese Arbeitsblattvariablen verwenden soll, Eingabe- und Ausgabewerte zuzuweisen.
Für erweiterte Steuerelemente mit Eingaben wird empfohlen, die Ausgabevariable zu definieren. Wenn Sie eine Leerstelle als Platzhalter lassen, stehen dem Steuerelement beim Öffnen des Arbeitsblatts keine Werte zur Verfügung.
Wenn das Steuerelement keine Ausgabevariable aufweist und die Eingaben im Array-Format vorliegen, ist eine Eingabevalidierung erforderlich, wenn das Skript auf diese Eingaben zugreift. Fügen Sie Ihrem Skript die folgende Zeile hinzu:
VBScript
If IsArray(Inputs(0).value) = False Then Exit Sub
JScript
if (!Inputs[0].Value.length) return;
Wert
Die Eigenschaft Value wird verwendet, um auf den reellen Teil der Daten zuzugreifen. Die Parameter row und col sind optional. Wenn die Parameter row und col angegeben sind, wird in der angegebenen row oder col ein Skalarwert zurückgegeben.
x = objDataValue.Value( [row, col])
objDataValue.Value( [row, col] ) = x
Eingabeskript in JScript:
var x = Inputs[0].Value[0][0]; //Accessing the 1st input, where the input is a matrix.
var y = Inputs[1].Value[0]; //Accessing the 2nd input, where the input is a vector.
var z = Inputs[2].Value; //Accessing the 3rd input, where the input is a variable.
Eingabeskript in VBScript:
x = Inputs(0).Value(0,0)
y = Inputs(1).Value(0)
z = Inputs(2).Value
Ausgabeskript in JScript:
Outputs[0].Value[0][0] = x;
Ausgabeskript in VBScript:
Outputs(0).Value(0,0) = x
Element
Beschreibung
x
Der reelle Teil der Daten an dieser Position.
row
Der Index der Ganzzahlen der ausgewählten Zeile.
col
Der Index der Ganzzahlen der ausgewählten Spalte.
Wenn die Eigenschaft Value auf der linken Seite eines Ausdrucks verwendet wird, wächst das Array nicht automatisch entsprechend der Daten an. Sie müssen die standardmäßige Skriptsprachenmethode zur Festlegung der Größe verwenden, um die Ausgabe einer Fehlermeldung zu vermeiden. Beispiel:
JScript:
//When using JScript, set the variable to array '[]' before assigning values.
Outputs[0].Value = [];
//In JS ES3 you can only use array of arrays.
Outputs[0].Value[0]=[0,0,0];
Outputs[0].Value[1]=[0,0,0];
Outputs[0].Value[2]=[0,0,1];
VBScript:
Dim out(2,2) ‘Set the array size. Notice this will create 3x3 dimensional array in VBscript.
Outputs(0).value=out
Outputs(0).value(2,2) = 1
Die Ausgabe in beiden Fällen ist ein Array aus drei Zeilen und drei Spalten.
Rows und Cols
Die Eigenschaften Rows und Cols sind schreibgeschützte Werte, die die Anzahl an Zeilen oder Spalten in dem Steuerelement zurückgeben. Hiermit können Sie die Bemaßungen eines Vektors oder Arrays, der bzw. das in einem bestimmten Element gespeichert ist, zur Laufzeit bestimmen.
JScript:
x = Inputs[0].Rows;
x = Inputs[0].Cols;
VBScript:
X = Inputs(0).Rows
X = Inputs(0).Cols
Element
Beschreibung
x
Die Ganzzahl an Zeilen oder Spalten.
War dies hilfreich?