Hallo,
Details zu meinem Skript:
Teil 1: Öffnen Sie eine neue Tabelle, damit der Benutzer Werte einträgt
Teil 2: Warten Sie, bis der Benutzer Werte eingegeben hat, und nehmen Sie die Antwort entgegen, um fortzufahren
Teil 3: Fahren Sie mit dem verbleibenden Skript fort
Ich kämpfe in Teil 2, weil ich die Werte in der Tabelle nicht ausfüllen kann, wenn ich modale Fenster verwende.
Ich möchte ein neues Fenster generieren, das auf die Benutzereingabe "OK" wartet, um fortzufahren, aber den Benutzer nicht unterbrechen sollte, während er Daten in die Tabelle einträgt.
Ich habe versucht
Q = Neues Fenster ("Bitte klicken Sie auf OK, wenn Sie fertig sind", < If(Arg(Q[1], 1) == 1, *Rest des Skripts*, Wait(5)).
Dies ist jedoch höchst wirkungslos, da das Modal unterbricht und andere Benutzereingaben verhindert.
Ich habe es ohne Modal versucht, aber die If-Klausel schien nicht zu funktionieren.
Bitte schlagen Sie einen besseren Weg (falls vorhanden) vor, dies anstelle einer *wait(n)*-Anweisung zu modellieren.
Schätze deine Hilfe!
Danke
Wenn Sie Ihr Programm in function()- und/oder Expr()-Elemente strukturieren, können Sie nicht modale Benutzereingabefenster verwenden, die es dem Benutzer ermöglichen, andere JMP-Aktivitäten durchzuführen und dann, wenn Sie fertig sind, Elemente aus dem von Ihnen erstellten Benutzerfenster auszuführen. Das folgende Skript ist ein sehr einfaches Beispiel
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
ShowResults = Expr( Show( TheResults ) );
NW = New Window( "User Input",
Text Box( "Enter in all your data and then Press the Button" ),
Spacer Box( size( 1, 15 ) ),
Button Box( "Click Here to Run",
NW << Close Window;
TheResults = Col Mean( :Height );
ShowResults;
)
);