Pregunta

he diseñado un QMainWindow con el diseñador QtCreator's. Consiste en el widget central de defecto (un QWidget) que contiene una QVBoxLayout con todos los otros widgets en el mismo. Ahora todo lo que quiero, es que el QVBoxLayout ocupa automáticamente el conjunto de widgets de centrales rectángulo espacio.

¿Cómo puedo hacer esto? No he encontrado ninguna propiedad ni utilizable en las propiedades de widgets de centrales ni los QVBoxLayout's.

¿Fue útil?

Solución

Usted no tiene que crear un QVBoxLayout manualmente. Simplemente seleccione su QWidget central y pulsar un botón maquillaje diseño.

text alt

Otros consejos

Si usted quiere hacer con el código en lugar de utilizar QtCreator, podría configurar el diseño de una QWidget y luego configurar el QWidget como el widget central de la ventana principal de la siguiente manera:

#include <QtGui>
#include <QWidget>
#include <QHBoxLayout>
#include "mainwindow.h"

MainWindow::MainWindow() {  

        // Set layout
        QHBoxLayout *layout = new QHBoxLayout;
        layout->addWidget(myWidget1);
        layout->addWidget(myWidget2);

        // Set layout in QWidget
        QWidget *window = new QWidget();
        window->setLayout(layout);

        // Set QWidget as the central layout of the main window
        setCentralWidget(window);

}

Añadir al menos un widget en su MainWindow. A continuación, seleccione la ventana haciendo clic en él y haga clic en el botón VerticalLayout en la parte superior de QTCreator. Usted Disposición vertical se ha agregado automáticamente al widget central y rellena toda la superficie.

Esto ya está contestada, pero yo personalmente prefiero mantener todos los elementos de control y diseños añaden manualmente al formulario. No agrego controles en los archivos de clase, yo simplemente conectar el señales / ranuras para ocultar / mostrar widgets de relevante para la lógica de la clase, dentro de la clase.

Para añadir manualmente un diseño para cualquier tipo de artilugio primero debe agregar al menos un control hijo / control. Eso no era totalmente claro para mí y yo estaba tratando de agregar el diseño en primer lugar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top