IIC2233 / syllabus-2021-1

Repositorio oficial del curso IIC2233 Programación Avanzada 🚀✨
https://iic2233.github.io
38 stars 49 forks source link

paths archivos .ui Qt Designer #689

Open imuoz opened 3 years ago

imuoz commented 3 years ago

Prerrequisitos

(Marcar colocando una X entre los corchetes los ítems que ya hiciste, así: "[X]")

Duda

Estoy un poco confundido de como hacer que las ventanas hereden de los archivos .ui correspondientes, pq tengo que llamar al archivo json en los .py de cada ventana, pero no se si poner open("parametros.json","r") es hardcoding o mala práctica.

Gustav2000 commented 3 years ago

Hola @imuoz 👋. Con respecto a tu primera duda sobre como hacer que las ventanas hereden de los archivos con extensión .ui, no te puedo mostrar directamente la solución, pero si revisas en los contenidos de la semana-07, en el archivo 3-pyqt-qt-designer.ipynb te quedará súper claro como realizar esto. Por otro lado, respecto a lo de llamar a tu archivo json en cada ventana mediante open("parametros.json","r") no creo que sea la forma más práctica, te recomiendo que crees una función que se encargue de cargar los parámetros de tu archivo json, donde lo único que tendrás que hacer será llamarla.

Espero que hayan quedado respondidas tus dudas, cualquier cosa me avisas.

tamyhan commented 3 years ago

Hola! Tengo una duda sobre esto mismo. Al crear una función que cargue los parámetros, habría que pasarle el path del archivo json de parámetros. Ese path se puede poner así nomás o hay que tener tambien un archivo parametros.py donde se guarden los paths de los archivos de parametros?

Gustav2000 commented 3 years ago

Hola @tamyhan, respecto a tu duda. La función puede tener directamente el path, ya que en esta tarea no hay que usar un archivo parametros.py. Para que te quede más claro la mejor práctica para trabajar con el archivo JSON son dos:

1) Que tengas una función (le puedes pasar el path como atributo, o puedes ya tenerlo puesto en esta función) que te retorne el diccionario serializado. Y cada vez que necesites los parámetros llamas a esta función. 2) En el caso que estés trabajando con clases, puedes guardar lo que te retorne esta función en un atributo.

Espero que se haya respondido tu duda.

tamyhan commented 3 years ago

Ok! Perfecto, gracias!