QT - Singleton, mostrar y ocultar ventanas QT Creator

   
Vista:

Singleton, mostrar y ocultar ventanas QT Creator

Publicado por Daniela (4 intervenciones) el 03/08/2017 21:41:10
Hola, espero me puedan ayudar....
Estoy haciendo un sistema en QT Creator 4.0.2
Lo que busco es poder abrir una ventana y ocultar la anterior y cuando oprima un botón regresar oculte la actual y muestre la anterior sin necesidad de estar creando nuevos objetos de esas clases porque me abriría muchas ventanas cada que entro a una ventana y regreso a la anterior.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Singleton, mostrar y ocultar ventanas QT Creator

Publicado por juanki (88 intervenciones) el 04/08/2017 10:40:47
Hola

Tanto la clase QDialog como QMainWindow disponen de los métodos show(), hide(), setVisible(bool) y isVisible() que puedes usar para controlar la visibilidad de la ventana.

http://doc.qt.io/qt-5/qmainwindow.html
http://doc.qt.io/qt-5/qdialog.html

Otra cosa es si es conveniente mantenerlas todas cargadas en memoria, si no se van a usar mucho igual te conviene crearlas cuando se van a usar y luego destruirlas. Las que estés continuamente abriendo igual sí te conviene mantenerlas en memoria.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Singleton, mostrar y ocultar ventanas QT Creator

Publicado por Daniela (4 intervenciones) el 04/08/2017 14:24:05
Como hago para mantenerlas en memoria?? Y como mando llamar a las ventanas que necesito desde otra ventana sin crear el objeto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Singleton, mostrar y ocultar ventanas QT Creator

Publicado por juanki (88 intervenciones) el 04/08/2017 23:33:01
Hola

Eso ya es C++, para mantenerlas en memoria tendrás que tener un puntero a dichas ventanas y crearlas con new. Para poder llamar a esa ventana de se otras ventanas/clases, pues quizás lo más sencillo es que le pases el puntero como parámetro en el constructor.

También podría hacerse con señales/slots. Ya depende de como más fácil te sea o dependiendo de tu código.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar