So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenHallo ,
Ich versuche, den Benutzer zu einer gültigen Eingabe zu zwingen: Ich zeige ein modales Fenster an und bitte um die Eingabe eines Werts.
Wenn dieser Wert eine andere Zeichenfolge als „“ ist, sollte der Code weiterhin den angegebenen Wert verwenden. Wenn nicht, sollte das Skript anhalten oder den Benutzer auffordern, eine korrekte Eingabe zu machen.
Ich habe versucht, ein modales Fenster zu verwenden und die Schaltfläche „OK“ auszublenden, aber irgendwie funktioniert es nicht (siehe beigefügten Code).
Bitte helfen Sie.
win = New Window( "Set a Value",
<<MODAL></MODAL>
Betreff: So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenGroßartig !
es funktioniert perfekt.
Danke.
Betreff: So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenIch bevorzuge die ausdrückliche Verwendung einer Schaltfläche „Abbrechen“, aber die Gestaltung Ihres Dialogs ist Ihre Sache.
Diese modifizierte Version des Beispiels, das ich zuvor gezeigt habe, sollte den Fall behandeln, dass der Benutzer auf „Abbrechen“ oder die Schaltfläche „Fenster schließen“ klickt.
Names Default to Here( 1 );
// put up dialog box for user entry
win = New Window( "Set a Value",
<<MODAL></MODAL>
Betreff: So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenHallo @samir ,
@Mark_Bailey hat einen wirklich guten Ausgangspunkt. Ich habe es leicht abgeändert, sodass es sich anhört, als ob Sie es wollten: Der Benutzer gibt eine Zahl ein.
Names Default To Here( 1 );
win = New Window( "Set a Value",
<<MODAL></MODAL>
Sie können auch die Option „On Validate()“ ausprobieren, aber ich denke, dass diese eine Liste von Zeichenfolgen anstelle einer Variablen zurückgibt. Im obigen Fall ist die neue Variable „content“ und könnte an eine andere Funktion oder einen anderen JSL-Code übergeben werden, der etwas damit macht.
Beachten Sie außerdem: Wenn Sie die Variablenbox als Zahlenbearbeitungsfeld aufrufen, weiß JMP, dass es nur positive oder negative Zahlen zulässt. Wenn sie also etwas anderes als eine Zahl eingeben, bleibt das Fenster geöffnet. Ich glaube nicht, dass es ohne ein spezielles Add-In mit imaginären Zahlen umgehen kann.
Hoffe das hilft!,
DS
Betreff: So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenGroßartig !!!!
Es erledigt 99 % der Arbeit!
Um 100 % zu erreichen, muss ich zwei Änderungen vornehmen:
- Kommentieren Sie den Code des „Abbrechen“-Buttons aus -> einfach
- Fügen Sie etwas hinzu, um den vollständigen Code zu verlassen, falls der Benutzer betrügen möchte und auf das „Kreuz“-Symbol klickt, um das modale Fenster „win“ zu schließen, ohne eine Zeichenfolge anzugeben.
Wissen Sie, wie das geht?
Betreff: So zwingen Sie den Benutzer, eine gültige Eingabe bereitzustellenVersuchen Sie diesen Ansatz:
Names Default to Here( 1 );
win = New Window( "Set a Value",
<<MODAL></MODAL>