> Hola, estoy diseñando una interfaz con wxPython que enumera una serie de > computadoras en red, y actualiza su estado. > > Por ejemplo: > Equipo 1: ausente > Equipo 2: 10% > Equipo 3: 50% > Equipo 4: 20% > etc. > > Le he puesto un boton para actualizar el estado (cada consulta tarda su > tiempo), y esto tiene que servir para unos 30 equipos. Al pulsar > [Actualizar] hago un recorrido (for Actual in Equipos) para consultar su > estado y reflejarlo en las etiquetas de texto: > Indicador.SetLabel("consultando") > NuevoEstado=EstadoConsultado(Actual) > Indicador.SetLabel(NuevoEstado) > > El problema es que se queda todo congelado hasta que termina todo el > proceso de toda la lista, y el formulario no cambia hasta el final. Ni > siquiera se aprecia el "consultando" para cada consulta durante el > recorrido. > > He buscado un equivalente al "DoEvents" de VisualBasic, pero no he > encontrado nada para Python. ¿Alguien sabe como resolverlo?
No es wx, pero el problema es el mismo, utilizar trabajos asíncronos. http://book.opensourceproject.org.cn/lamp/python/pythoncook2/opensource/0596007973/pythoncook2-chp-11-sect-9.html Otro ejemplo: http://code.activestate.com/recipes/577129-run-asynchronous-tasks-using/ -- Reynaldo "mens et manus" _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/