Cuadro combinado: ¿cómo colapsar rápidamente su menú?Hola, ¿alguien sabe alguna manera de colapsar rápidamente el menú de un cuadro combinado una vez que se realiza la selección? Tengo un cuadro combinado y hago una selección para obtener la selección, luego procede a otra secuencia de comandos que tarda quizás otros 5 segundos en iniciarse por completo. Pero durante estos 5 segundos, el menú del cuadro combinado permanece abierto y no se colapsará hasta que el otro script termine. Me gustaría que el menú del cuadro combinado se colapsara casi instantáneamente después de la selección. Descubrí que cambiar el enfoque hace esto (por ejemplo, leyenda y luego elimina leyenda), pero esto es un poco torpe. ¿Algún otro pensamiento? gracias dj
Re: Combo Box - ¿cómo colapsar rápidamente su menú?No soy capaz de reproducir el problema. Para el código a continuación, el cuadro combinado se colapsa rápidamente (JMP 13 para Macintosh).
No estoy seguro de lo que está pasando. Su "slowJSL" puede contener código que puede aprovechar todos los recursos informáticos (¿multiprocesamiento?).
// Save example of a "slow" jsl file
Save Text File("$SAMPLE_SCRIPTS/slowJSL.jsl", "repeat({char(randominteger(1,1e6))},1e7);
print(fruit)");
New Window("test",
cb1 = Combo Box(
{"<CHOOSE>", "apple", "orange", "banana", "kiwi", "tangerine"},
fruit = cb1 << get text;
Include("$SAMPLE_SCRIPTS/slowJSL.jsl");
)
);
// Delete example jsl by running the line below
// Delete File("$SAMPLE_SCRIPTS/slowJSL.jsl");
</CHOOSE>Re: Combo Box - ¿cómo colapsar rápidamente su menú?¿Esperaste (0) al principio del segundo script?Re: Combo Box - ¿cómo colapsar rápidamente su menú?DJ,
¿Puede proporcionar un script de ejemplo, para que pueda reproducirse? Será útil pensar en las opciones.
Mejor
Uday
Re: Combo Box - ¿Cómo colapsar rápidamente su menú?Gracias por las sugerencias.Intenté esperar (0) y fue en vano.He aquí un ejemplo:
Problema : el menú del cuadro combinado no se colapsa rápidamente después de la selección mientras espera a que se procese el siguiente "slowJSL.jsl" (quiero que procese la selección del menú posterior, por supuesto).En este caso, "slowJSL.jsl" tarda unos 5 segundos en procesarse.La clave aquí es que la selección de publicaciones del menú simplemente se cuelga y permanece abierta mientras tanto.Esperaba cerrarlo rápidamente después de que se realizara la selección.
new window("test",
cb1=combo box({"<CHOOSE>","apple","orange","banana","kiwi","tangerine"},
fruit=cb1<<GET text=""></GET></CHOOSE>
Reparar (aunque me pregunto si no hay una mejor manera):
new window("test",
cb1=combo box({"<CHOOSE>","apple","orange","banana","kiwi","tangerine"},
cb1<<SET></SET></CHOOSE>
Re: Combo Box - ¿Cómo colapsar rápidamente su menú?¡Ja ja! ¿No sabría que tuve este mismo problema 4 años después?Estoy usando JMP 12.2.0. Así que terminé aquí para encontrar una buena solución.
Entonces, el Combobox () funciona de maravilla para mí con su selección única y su agradable factor de forma compacto.En este caso ahora, voy a hacer que ejecute algo de SQL y eso, por supuesto, tarda de 3 a 5 segundos en ejecutarse.Mientras hace esto, su menú de selección que maneja el filtro SQL, permanecerá abierto durante 3-5 segundos después de la selección única del mismo.Sobre todo es un poco molesto, eso es todo.Así que hice esta misma solución y funcionó bien con el título agregar / quitar que colapsa rápidamente el menú Combobox ().Hacer una espera (0) no tuvo ningún efecto en este caso.
cmb12=combobox({"thing1","thing2","thing3"},
SQLselect=cmb12<<GET selected=""></GET>
Re: Combo Box - ¿Cómo colapsar rápidamente su menú?Puede reemplazar el título con un cuadro que les dé a los usuarios un mensaje de estado:
win = new window( "test",
cb1 = combo box(
{"<CHOOSE>", "apple", "orange", "banana", "kiwi", "tangerine"},
fruit = cb1 << get text;
tempwin = New Window("Your query is running", Show Menu(0), Show Toolbars(0),
Text Box("Your query is running,\!njust a moment..."));
wait(2);
tempwin << close window;
)
);
</CHOOSE>