Was ist der Rückgabetyp von „Get Selected“ (mit Listenfeld)?Hallo, ich muss wissen, was der Rückgabetyp eines Listenfelds ist.
Aus dem Skriptindex:
Names Default To Here( 1 );
New Window( "Example",
fontobj = lb = List Box(
{"First Item", "Second Item", "Third Item"},
width( 200 ),
max selected( 2 ),
nlines( 6 )
)
);
lb << Set Selected( 2 );
Print( lb << Get Selected );Wird zurückgegeben:
{"Second Item"}Welcher Objekttyp ist diese Rückgabe? Liste, Array? Wie greife ich über den Index auf Elemente zu? Wie soll ich mit den darin enthaltenen Inhalten umgehen? Wenn mehr als zwei Elemente mit Strg ausgewählt werden, werden dann mehrere Elemente in dieser Liste oder diesem Array zurückgegeben?
Nehmen wir zum Beispiel an, ich muss eine vorhandene Zeichenfolge mit dem ausgewählten Wert aus diesem Listenfeld verketten.
Was ist der Unterschied zwischen << Get Selected und << Get Selected Indices? In den meisten Codeausschnitten, die ich sehe, ist es üblich, „Ausgewählte Indizes abrufen“ zu verwenden, und ich verstehe nicht, warum Sie nur die Indizes abrufen sollten, wenn Ihr ultimatives Ziel darin besteht, den Inhalt abzurufen.
Wie kann ich außerdem meine Debugging-Ausdrucke sehen, wenn ich den Application Builder verwende? Werden sie in das allgemeine Protokollfenster gelangen?
Danke
Automatisierung und SkripterstellungInhaltsorganisationBetreff: Was ist der Rückgabetyp von „Get Selected“ (mit Listenfeld)?Hallo @JMen , willkommen in der Community.
Zusätzlich zur Antwort von Marc_Bailey können Sie sich von JMP sagen lassen, welchen Typ Sie erhalten haben:
type(lb << Get Selected);
Ich finde das sehr nützlich, da es immer entscheidend ist, mit welcher Art von Objekt man es zu tun hat.
Betreff: Was ist der Rückgabetyp von „Get Selected“ (mit Listenfeld)?Ja, das vom Senden dieser Nachricht zurückgegebene Ergebnis ist eine Liste. Ja, Sie greifen über Indizes darauf zu. list[index] funktioniert also. Sie können mehr als einen Index gleichzeitig verwenden. Indizes beginnen bei 1, nicht bei 0.
Sie können Zeichenfolgen, die Literalwerte sind oder in Variablen gespeichert sind, mit der Funktion Concat() oder || verketten Operator.
Die Nachricht << Get Selected gibt die Elemente zurück. Die Option << Ausgewählte Indizes abrufen gibt stattdessen ihren Index im Listenfeld zurück. Ich verwende Indizes ständig mit der speziellen Choose()-Funktion anstelle der Allzweckfunktion If(). Es hängt also alles von Ihren Bedürfnissen, Ihrem Stil und Ihrer Herangehensweise ab.
Names Default to Here( 1 );
list1 = { "Monday", "Tuesday", "Wednesday" };
list2 = { "Thursday", "Friday", "Saturday", "Sunday" };
first = list1[1];
nextCouple = list1[2::3]; // or list1[{2,3}];
Show( first, nextCouple );
together = list1 || list2;
Show( together );
newStr = "Existing string " || list1[1];
Show( newStr );