¿Hay alguna manera de usar la biblioteca tkinter de Python? Si intento importarla, solo aparece un mensaje de error que dice que no existe.
Vea esta respuesta de Paul RE: ¿Hay una lista de nombres de bibliotecas de Python en JMP18.0.0?
Negrita añadida por mí
Las únicas bibliotecas "instaladas" son las bibliotecas estándar distribuidas con Python.org Python 3.11.x, menos unas pocas que pueden no funcionar bien en el entorno integrado. Estas son las más notables: venv y tkinter . Y algunas triviales como turtle y hello .
El problema es que TkInter y otras bibliotecas GUI para Python asumen que Python tiene el control del 'bucle de ejecución' del programa principal, pero en el caso de Python integrado, la aplicación host (JMP) es la que controla el bucle de eventos de la GUI principal. Esto causa todo tipo de problemas, principalmente inestabilidad y fallas, ya que los dos luchan por el control del bucle de eventos. Abrir una ventana Tk (o incluso una ventana matplotlib) suele estar bien siempre y cuando nunca cierres la ventana mientras JMP todavía se esté ejecutando... Cierra la ventana, puedes tener múltiples problemas. He visto todos estos: JMP saliendo porque la IU de Python decidió que la última ventana cerrada debería salir de la aplicación, pero eso es JMP; corrupción del sistema de menú en JMP ya que la IU de Python hace que se liberen otros recursos a medida que se cierra la ventana; y simplemente falla poco después.
Una de las cosas que se está explorando es la creación de ventanas de interfaz de usuario de JMP para dibujar dentro de ellas y agregar controles. Ya he realizado un código de ejemplo en 18 donde, al usar run_jsl(), se genera un cuadro de diálogo de selección de archivos. La integración de JMP con Python que controla las ventanas de JMP no tiene los mismos problemas que una interfaz de usuario externa que piensa que Python tiene el control total.