如何在小部件下面设置停靠小部件

时间:2013-09-18 12:01:07

标签: qt qt4 dock qt4.8 qtgui

我想在窗口小部件下方的位置设置停靠窗口小部件,如图

enter image description here

但是当我将几何图形设置为Y的起点以等于间隙尺寸但它不起作用时。

1 个答案:

答案 0 :(得分:4)

我认为QDockWidget的位置应该以不同的方式处理,然后设置它的几何。

此示例显示了QDockWidgets如何根据需要定位+另一个停靠窗口小部件与另一个停靠在一起。

#include <QtGui>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    // Main window
    QMainWindow *window = new QMainWindow;
    window->setDockNestingEnabled(true);
    // Anything to add as central widget
    QWidget *widget = new QWidget;
    window->setCentralWidget(widget);

    // First dock in the left top corner
    QDockWidget *dockWidget = new QDockWidget("--- 1 ---");
    window->addDockWidget(Qt::LeftDockWidgetArea, dockWidget);

    // Second dock below first one
    QDockWidget *dockWidget2 = new QDockWidget("--- 2 ---");
    window->addDockWidget(Qt::LeftDockWidgetArea, dockWidget2);

    // Third in tab with second one
    QDockWidget *dockWidget3 = new QDockWidget("--- 3 ---");
    window->tabifyDockWidget(dockWidget2, dockWidget3);

    window->show();

    return a.exec();
}

QMainWindow有几个功能如何处理分割,移动或标记QDockWidgets