JSL-Hilfe beim Aktualisieren des Bedienfeldfelds bei Änderung des KombinationsfeldsHallo alle,
Ich arbeite an einem JSL-Code, bei dem ich etwas wie die Plattformschnittstelle der Support-Vektor-Maschinen machen möchte (für diejenigen mit Pro, für diejenigen ohne, sollten die Screenshots helfen, es weiter zu erklären).
Ich möchte, dass das Panel-Feld, das ein Kombinationsfeld enthält, basierend auf der Benutzerauswahl des Kombinationsfelds verschiedene Optionen aktualisiert und anzeigt. Mit dem SVM-Beispiel möchte ich etwas Ähnliches machen: Wenn der Benutzer die erste Combobox-Option auswählt, führt dies zu einer aktualisierten Panelbox, wie sie im ersten Screenshot gezeigt wird. Wenn der Benutzer dann die nächste Option auswählt, wird das Panel-Feld aktualisiert, um die neuen Optionen anzuzeigen, wie im zweiten Screenshot.


Die Kombinationsfelder lassen den On Change()-Aufruf nicht zu, und ich kann anscheinend keinen Funktionsaufruf zum Laufen bringen, wenn das Kombinationsfeld geändert wird. Ich denke darüber nach, vielleicht einen UpdateWindow-Aufruf zu machen, aber es fällt mir schwer, herauszufinden, wie man das richtig macht.
Irgendwelche Vorschläge geschätzt.
Vielen Dank!,
DS
SkripterstellungBetreff: JSL-Hilfe beim Aktualisieren des Bedienfeldfelds bei Änderung des KombinationsfeldsHi @ian_jmp ,
Danke für die schnelle Rückmeldung und Hilfe. Ich musste es ein wenig modifizieren, so dass es nur einen Teil der Panel-Box und nicht alles änderte.
Diese modifizierte Version ist eine, die das tut, was ich mir erhofft hatte, und ohne Ihr Code-Snippet hätte ich es nicht geschafft. Vielen Dank!
Names Default To Here( 1 );
UInames = {"Option One", "Option Two"};
lublist = {Lineup Box( N Col( 3 ), Spacing( 3, 3 ), Text Box( "A" ), Text Box( "B" ), Number Edit Box( 7, 6 ) ),
Lineup Box( N Col( 3 ), Spacing( 3, 3 ), Text Box( "C" ), Text Box( "D" ), Number Edit Box( 10, 6 ) )};
cb = Combo Box(
UInames,
<<SETFUNCTION></SETFUNCTION>
Vielen Dank!,
DS
Betreff: JSL-Hilfe beim Aktualisieren des Bedienfeldfelds bei Änderung des KombinationsfeldsDies könnte Ihnen den Einstieg erleichtern:
NamesDefaultToHere(1);
UInames = {"UI One", "UI Two"};
UIList = {PanelBox(UInames[1], TextBox("One")), PanelBox(UInames[2], TextBox("Two"))};
cb = ComboBox(UInames, << SetFunction(
Function( {this, index},
(this << sib) << delete;
this << sibAppend(Eval(UIlist[index]))
)
)
);
NewWindow("Dynamic UI", LineUpBox(NCol(1), cb, Eval(UIlist[1])));