這當然看起來像含有「測試」組框佈局具有上邊距設置,所以我肯定會檢查再仔細。然後再次檢查:)
你可能已經設置了「測試」組框的字體爲某種字體類型或大小,可能會丟掉東西?
您是否正在應用可能影響事物的樣式表?
編輯:
我已經包括在.H了的.ui和生成的代碼從我的實驗,你形容爲在意見中的要求的佈局。
mainwindow.ui:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>376</width>
<height>433</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralWidget">
<layout class="QGridLayout" name="gridLayout" columnstretch="0,0">
<property name="margin">
<number>0</number>
</property>
<property name="spacing">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>GroupBox</string>
</property>
<property name="flat">
<bool>false</bool>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QWidget" name="widget" native="true">
<layout class="QGridLayout" name="gridLayout_2">
<property name="margin">
<number>0</number>
</property>
<property name="spacing">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>GroupBox</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
<property name="flat">
<bool>false</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QWidget" name="widget_2" native="true"/>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>376</width>
<height>21</height>
</rect>
</property>
</widget>
<widget class="QToolBar" name="mainToolBar">
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
</widget>
<widget class="QStatusBar" name="statusBar"/>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>
..interesting ui_mainwindow.h的一部分
public:
QWidget *centralWidget;
QGridLayout *gridLayout;
QGroupBox *groupBox;
QWidget *widget;
QGridLayout *gridLayout_2;
QGroupBox *groupBox_2;
QWidget *widget_2;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
MainWindow->resize(376, 433);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QString::fromUtf8("centralWidget"));
gridLayout = new QGridLayout(centralWidget);
gridLayout->setSpacing(0);
gridLayout->setContentsMargins(0, 0, 0, 0);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
groupBox = new QGroupBox(centralWidget);
groupBox->setObjectName(QString::fromUtf8("groupBox"));
groupBox->setFlat(false);
gridLayout->addWidget(groupBox, 0, 0, 1, 1);
widget = new QWidget(centralWidget);
widget->setObjectName(QString::fromUtf8("widget"));
gridLayout_2 = new QGridLayout(widget);
gridLayout_2->setSpacing(0);
gridLayout_2->setContentsMargins(0, 0, 0, 0);
gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2"));
groupBox_2 = new QGroupBox(widget);
groupBox_2->setObjectName(QString::fromUtf8("groupBox_2"));
QFont font;
font.setFamily(QString::fromUtf8("MS Shell Dlg 2"));
font.setPointSize(8);
font.setBold(false);
font.setWeight(50);
font.setKerning(true);
groupBox_2->setFont(font);
groupBox_2->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
groupBox_2->setFlat(false);
gridLayout_2->addWidget(groupBox_2, 0, 0, 1, 1);
widget_2 = new QWidget(widget);
widget_2->setObjectName(QString::fromUtf8("widget_2"));
gridLayout_2->addWidget(widget_2, 1, 0, 1, 1);
gridLayout->addWidget(widget, 0, 1, 1, 1);
MainWindow->setCentralWidget(centralWidget);
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QString::fromUtf8("menuBar"));
menuBar->setGeometry(QRect(0, 0, 376, 21));
MainWindow->setMenuBar(menuBar);
mainToolBar = new QToolBar(MainWindow);
mainToolBar->setObjectName(QString::fromUtf8("mainToolBar"));
MainWindow->addToolBar(Qt::TopToolBarArea, mainToolBar);
statusBar = new QStatusBar(MainWindow);
statusBar->setObjectName(QString::fromUtf8("statusBar"));
MainWindow->setStatusBar(statusBar);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
一切都被設置爲0。我意識到,我必須有一些做的窗口層次結構。我現在只是在一個小部件的左手邊,以及其他一些東西。他們現在最終在窗口的同一層。 – chikuba 2012-02-04 23:30:10
我試圖複製你的佈局,你使用QtCreator描述它,我沒有那個垂直偏移問題。 – 2012-02-05 06:55:45
你能告訴我這個代碼嗎?真的想試圖找出我做錯了什麼:) – chikuba 2012-02-05 10:41:30