Verwenden einer anderen Schaltfläche anstelle von "Ok" - Modale FensterHallo,
Ich habe gerade angefangen, Scripting zu lernen, also entschuldigen Sie bitte die chaotische oder redundante Codierung, haha.Ich versuche, ein paar Dinge zu kombinieren, die ich aus diesen Foren mitgenommen habe.Geben Sie dem Benutzer grundsätzlich die Möglichkeit, eine Datei zu öffnen oder eine bereits geöffnete Datei auszuwählen.Ich habe endlich herausgefunden, dass ich ein modales Fenster verwenden musste, um zu warten, bis die Auswahl getroffen wurde, bevor ich mit dem Skript fortfahren konnte.
Gibt es eine Möglichkeit, den Code fortzusetzen, wenn die Auswahl getroffen wurde? Anstatt darauf zu warten, dass der Benutzer auf die Schaltfläche „Ok“ drückt?Also zu meinen beiden Möglichkeiten:
1. Benutzer öffnet eine Datei --> fortfahren, wenn die Datei geöffnet ist
2. Der Benutzer wählt eine geöffnete Datei aus --> fortfahren, wenn die Datei ausgewählt ist
Im Moment erscheint es überflüssig, sie nach der Auswahl auf die Schaltfläche „OK“ drücken zu lassen.Danke für jede Hilfe!
InputWindow = New Window( "Pick a file opening option (must be truncated)", <<MODAL></MODAL>
Betreff: Verwenden eines anderen Buttons anstelle von "Ok" - Modale FensterHallo,
Danke für die Antworten.Ah, ich denke, jeder hat Recht, ich brauchte es nicht, um modal zu sein.Das war die erste Lösung, die ich gefunden habe, um meine Tabelle dazu zu bringen, definiert zu bleiben, nachdem die Auswahl getroffen wurde und das Skript die Fensterauswahl passiert hat.
Wie auch immer, der Selbstklick funktionierte bereits für das, was ich geschrieben hatte.Aber ich werde versuchen, die direkte Art der Verwendung von Funktionen.Danke noch einmal.
Betreff: Verwenden eines anderen Buttons anstelle von "Ok" - Modale FensterModale Fenster sind so konzipiert, dass sie einen Benutzer zwingen, auf OK zu klicken, bevor die Ausführung fortgesetzt wird.Alternativ können Sie ein nicht-modales Fenster haben und ein Skript entweder an eine Schaltfläche oder ein Anzeigefeld anhängen, das eine Auswahl ermöglicht.Im folgenden Beispiel wird die Ausführung sofort fortgesetzt, wenn eine Auswahl getroffen wird:
Names Default To Here(1);
lst = {"Item 1","Item 2","Item 3","Item 4"};
nw = New Window("Selection",
Border Box(top(20),bottom(20),left(20),right(20),
V List Box(
Text Box("Select an item from the list:"),
lb = List Box(lst,<<SETMAXSELECTED></SETMAXSELECTED>
Betreff: Verwenden eines anderen Buttons statt "Ok" - Modale FensterSie könnten einfach manuell die OK-Schaltfläche erstellen und mit btn << Click darauf klicken.
InputWindow = New Window( "Pick a file opening option (must be truncated)",
<<MODAL></MODAL>
Aber es hört sich so an, als ob Sie keinen modalen Dialog benötigen.Sie könnten den Rest Ihrer Codeausführung einfach als Funktion oder Ausdruck ausführen lassen und diese an jede Schaltfläche senden.
domorestuff = function({},
print(dt);
);
InputWindow = New Window( "Pick a file opening option (must be truncated)",
V List Box(
Text Box( "Pick a Cut and Truncated Waveform" ),
Spacer Box( size( 1, 10 ) ),
Button Box( "Open a file",
path = Pick File(
"Select Raw Waveform data",
"", // no default directory
{"JMP Files|jmp;jsl;jrn", "All Files|*"},
1,
0,
"" // no default file
);
dt = Open( path ); //probably should do this instead of current data table()
//dt = Current Data Table();
domorestuff();
),
Spacer Box( size( 10, 1 ) ),
Button Box( "Select from a list",
choose_data_table = Function( {},
list = {};
For( i = 1, i <= N Table(), i++,
list[i] = Data Table( i ) << get name
);
win = New Window( "Select a data table",
<<MODAL></MODAL>