So wenden Sie "Max Selected" auf eine Kontrollkästchenliste anHallo, ist es möglich, den Filter "Max. Auswahl" anzuwenden, um die Anzahl der Kontrollkästchen zu begrenzen, die ein Benutzer auswählen kann?
Ich werde Ihre Vorschläge zu schätzen wissen.
Names Default To Here( 1 );
New Window( "Example",
cb = Check Box(
{"One", "Two", "Three"}, Max Selected(2),
Print(
"Selected: " ||
Concat Items( cb << Get Selected(), ", " )
)
)
);SkripterstellungBetreff: So wenden Sie "Max Selected" auf eine Kontrollkästchenliste anAlles, was Sie für Elemente wie die von Ihnen vorgeschlagene "Max Selected"-Meldung tun müssen, ist, zum Scripting-Index zu gehen und sich den CheckBox-Eintrag anzusehen.Und wenn Sie keine Nachricht sehen, die das tut, was Sie vorschlagen, dann gibt es eine solche Funktion nicht direkt vom Objekt
Betreff: So wenden Sie "Max Selected" auf eine Kontrollkästchenliste anVielen Dank @txnelson , ich hatte befürchtet, dass die Antwort lauten würde: Nein. Sehr schön, dein Workaround, ich werde versuchen, ihn in meinen Code zu implementieren.
Betreff: So wenden Sie "Max Selected" auf eine Kontrollkästchenliste anEs gibt keine Max Selected-Nachricht, die eingestellt werden kann, aber man kann ein Skript schreiben, um dies zu tun.Hier ist meine Art, damit umzugehen
Names Default To Here( 1 );
New Window( "Example",
cb = Check Box(
{"One", "Two", "Three"},
curSelected = cb << get selected;
If( N Items( curSelected ) > 2,
// Determine the one just selected
For( i = 1, i <= N Items( cb << get items ), i++,
If(
Contains( curSelected, (cb << get items)[i] ) > 0 &
Contains( prevSelected, (cb << get items)[i] ) == 0,
dialog("Too many selections");
cb << set(i,0);
Break();
)
);
,
prevSelected = curSelected;
);
)
);