[gelöst] Dynamische Fenstergröße
Verfasst: 17. Juli 2007 13:12
Hallo,
ich habe folgendes Problem und auch die Suche im Forum konnte mir nicht so richtig helfen. Ich habe mit dem Designer ein MainWindow gebaut und zwar:
MainWindow mit CentralWidget (CW) , im CW ein QHBoxLayout (QL) und im QL eine QTreeView.
Nun möchte ich gerne, das wenn ich das MainWindow vergrößere auch die QTreeView mit vergrößert wird. Das Forum sagt: "Das macht das Layout automatisch" dem ist bei mir nicht so. Vielleicht habe ich ein bißchen zuviel rumprobiert.
Dem QL wird später dynamisch noch eine QGroupBox hinzugefügt. Die soll ihre Größe auch mit verändern (im übrigen beides nur in vertikaler Richtung). Mag sich vielleicht einer den Code aus dem ui_... .h_File anschauen und mir sagen was ich falsch mache?
Schon mal Danke und Gruß!
ich habe folgendes Problem und auch die Suche im Forum konnte mir nicht so richtig helfen. Ich habe mit dem Designer ein MainWindow gebaut und zwar:
MainWindow mit CentralWidget (CW) , im CW ein QHBoxLayout (QL) und im QL eine QTreeView.
Nun möchte ich gerne, das wenn ich das MainWindow vergrößere auch die QTreeView mit vergrößert wird. Das Forum sagt: "Das macht das Layout automatisch" dem ist bei mir nicht so. Vielleicht habe ich ein bißchen zuviel rumprobiert.
Dem QL wird später dynamisch noch eine QGroupBox hinzugefügt. Die soll ihre Größe auch mit verändern (im übrigen beides nur in vertikaler Richtung). Mag sich vielleicht einer den Code aus dem ui_... .h_File anschauen und mir sagen was ich falsch mache?
Schon mal Danke und Gruß!
Code: Alles auswählen
#ifndef UI_XML_PARSER_H
#define UI_XML_PARSER_H
#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QHBoxLayout>
#include <QtGui/QMainWindow>
#include <QtGui/QMenu>
#include <QtGui/QMenuBar>
#include <QtGui/QStatusBar>
#include <QtGui/QTreeView>
#include <QtGui/QWidget>
class Ui_MainWindow
{
public:
QAction *actionOpen;
QAction *actionSave;
QAction *actionExit;
QWidget *centralwidget;
QWidget *horizontalLayout;
QHBoxLayout *hboxLayout;
QTreeView *treeView;
QMenuBar *menubar;
QMenu *menuFile;
QStatusBar *statusbar;
void setupUi(QMainWindow *MainWindow)
{
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
MainWindow->setMinimumSize(QSize(600, 600));
MainWindow->setMaximumSize(QSize(600, 16777215));
MainWindow->setDockNestingEnabled(true);
actionOpen = new QAction(MainWindow);
actionOpen->setObjectName(QString::fromUtf8("actionOpen"));
actionSave = new QAction(MainWindow);
actionSave->setObjectName(QString::fromUtf8("actionSave"));
actionExit = new QAction(MainWindow);
actionExit->setObjectName(QString::fromUtf8("actionExit"));
centralwidget = new QWidget(MainWindow);
centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
QSizePolicy sizePolicy(static_cast<QSizePolicy::Policy>(7), static_cast<QSizePolicy::Policy>(7));
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(centralwidget->sizePolicy().hasHeightForWidth());
centralwidget->setSizePolicy(sizePolicy);
horizontalLayout = new QWidget(centralwidget);
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
horizontalLayout->setGeometry(QRect(10, 20, 581, 541));
hboxLayout = new QHBoxLayout(horizontalLayout);
hboxLayout->setSpacing(6);
hboxLayout->setMargin(0);
hboxLayout->setObjectName(QString::fromUtf8("hboxLayout"));
treeView = new QTreeView(horizontalLayout);
treeView->setObjectName(QString::fromUtf8("treeView"));
QSizePolicy sizePolicy1(static_cast<QSizePolicy::Policy>(0), static_cast<QSizePolicy::Policy>(7));
sizePolicy1.setHorizontalStretch(220);
sizePolicy1.setVerticalStretch(255);
sizePolicy1.setHeightForWidth(treeView->sizePolicy().hasHeightForWidth());
treeView->setSizePolicy(sizePolicy1);
treeView->setMinimumSize(QSize(220, 520));
treeView->setMaximumSize(QSize(220, 16777215));
treeView->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);
treeView->setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
treeView->setHorizontalScrollMode(QAbstractItemView::ScrollPerItem);
treeView->setIndentation(20);
treeView->setRootIsDecorated(true);
treeView->setUniformRowHeights(false);
treeView->setItemsExpandable(false);
treeView->setAllColumnsShowFocus(false);
hboxLayout->addWidget(treeView);
MainWindow->setCentralWidget(centralwidget);
menubar = new QMenuBar(MainWindow);
menubar->setObjectName(QString::fromUtf8("menubar"));
menubar->setGeometry(QRect(0, 0, 600, 19));
menuFile = new QMenu(menubar);
menuFile->setObjectName(QString::fromUtf8("menuFile"));
menuFile->setGeometry(QRect(222, 115, 112, 113));
MainWindow->setMenuBar(menubar);
statusbar = new QStatusBar(MainWindow);
statusbar->setObjectName(QString::fromUtf8("statusbar"));
MainWindow->setStatusBar(statusbar);
menubar->addAction(menuFile->menuAction());
menuFile->addAction(actionOpen);
menuFile->addAction(actionSave);
menuFile->addSeparator();
menuFile->addAction(actionExit);
retranslateUi(MainWindow);
QSize size(600, 600);
size = size.expandedTo(MainWindow->minimumSizeHint());
MainWindow->resize(size);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "SIM90 XML-Editor", 0, QApplication::UnicodeUTF8));
actionOpen->setText(QApplication::translate("MainWindow", "&Open File", 0, QApplication::UnicodeUTF8));
actionOpen->setShortcut(QApplication::translate("MainWindow", "Ctrl+O", 0, QApplication::UnicodeUTF8));
actionSave->setText(QApplication::translate("MainWindow", "&Save File As...", 0, QApplication::UnicodeUTF8));
actionSave->setIconText(QApplication::translate("MainWindow", "Save File", 0, QApplication::UnicodeUTF8));
actionSave->setToolTip(QApplication::translate("MainWindow", "Save File", 0, QApplication::UnicodeUTF8));
actionSave->setShortcut(QApplication::translate("MainWindow", "Ctrl+S", 0, QApplication::UnicodeUTF8));
actionExit->setText(QApplication::translate("MainWindow", "E&xit", 0, QApplication::UnicodeUTF8));
actionExit->setShortcut(QApplication::translate("MainWindow", "Ctrl+X", 0, QApplication::UnicodeUTF8));
menuFile->setTitle(QApplication::translate("MainWindow", "&File", 0, QApplication::UnicodeUTF8));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
#endif // UI_XML_PARSER_H