Usando otro botón en lugar de "Ok" - Ventanas modalesHola,
Acabo de empezar a aprender secuencias de comandos, así que disculpe la codificación desordenada o redundante, jaja.Estoy tratando de combinar algunas cosas que he recogido de estos foros.Básicamente, brinde al usuario la opción de abrir un archivo o seleccionar un archivo ya abierto.Finalmente me di cuenta de que necesitaba usar una ventana modal para esperar a que se hiciera la selección antes de continuar con el script.
¿Hay alguna manera de que el código continúe cuando se realiza la selección? ¿En lugar de esperar a que el usuario presione el botón "Aceptar"?Así que para mis dos opciones:
1. El usuario abre un archivo --> continuar cuando se abre el archivo
2. El usuario selecciona un archivo abierto --> continuar cuando se selecciona el archivo
En este momento, hacer que presionen el botón "Aceptar" después de la selección parece redundante.¡Gracias por cualquier ayuda!
InputWindow = New Window( "Pick a file opening option (must be truncated)", <<MODAL></MODAL>
Re: Usar otro botón en lugar de "Aceptar" - Ventanas modalesHola,
Gracias por las respuestas.Ah, creo que todos tienen razón en que no necesitaba que fuera modal.Esa fue la primera solución que encontré para que mi tabla permaneciera definida después de que se realizó la selección y el script pasó de la selección de la ventana.
De cualquier manera, el clic automático funcionó para lo que había escrito, ya.Pero intentaré la forma directa de usar funciones.Gracias de nuevo.
Re: Usar otro botón en lugar de "Aceptar" - Ventanas modalesLas ventanas modales están diseñadas para obligar a un usuario a hacer clic en Aceptar antes de que continúe la ejecución.Alternativamente, puede tener una ventana no modal y adjuntar un script a un botón o un cuadro de visualización que permita selecciones.En el siguiente ejemplo, la ejecución continúa inmediatamente después de realizar una selección:
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>
Re: Usar otro botón en lugar de "Aceptar" - Ventanas modalesPuede simplemente hacer manualmente el botón Aceptar y hacer clic con btn << Haga clic.
InputWindow = New Window( "Pick a file opening option (must be truncated)",
<<MODAL></MODAL>
Pero parece que es posible que no necesite un diálogo modal.Podría hacer que el resto de la ejecución de su código sea una función o expresión y enviarla a cada botón.
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>