首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QDockWidgets合并不正确

QDockWidgets合并不正确
EN

Stack Overflow用户
提问于 2016-05-02 08:10:10
回答 1查看 335关注 0票数 0

我有一个QDockWidget类和一个QMainWindow

代码语言:javascript
复制
// docker.hpp
class Docker : public QDockWidget
{
    Q_OBJECT
public:
    Docker(QString title, QWidget* parent = 0);
}

// docker.cpp
Docker::Docker(QString title, QWidget* parent): QDockWidget(title, parent)
{
    QWidget* widget = new QWidget(this);
    widget.setMinimumSize(200, 200);
    setWidget(widget);
    widget->setStyleSheet("border:5px solid gray;");

    setAllowedAreas(Qt::AllDockWidgetAreas);
}

// mainwindow.hpp
class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    MainWindow(QWidget* parent);
private slots:
    void createDockers();
};

// mainwindow.cpp
MainWindow::MainWindow(QWidget* parent): QMainWindow(parent)
{
    setDockOptions(dockOptions() |
               QMainWindow::AllowTabbedDocks |
               QMainWindow::GroupedDragging);

    // The following line of code does not change the situation.
    // setTabPosition(Qt::RightDockWidgetArea, QTabWidget::East);

    // There are some other codes which connect a button to the void createDockers() method
}

void createDockers()
{
    Docker* dock = new Docker("Docker", this);
    dock->setFloating(true);
    dock->show();
}

我能够创建两个Docker的点击上面提到的按钮。

但是,当我将一个QDockWidget拖到另一个上时,边框消失了,并且没有显示选项卡:

我期望发生以下情况:(通过生成多个QDockWidget实现)

我还注意到,其中一款QDockWidget并没有消失。相反,它合并回了MainWindow。只有当它们是“前两个”QDockWidget时,才会发生这种情况。

是什么导致了这个问题,如何解决它?我正在尝试模仿this project

EN

回答 1

Stack Overflow用户

发布于 2016-05-02 17:22:06

我猜它链接到QMainWindow::GroupedDragging选项。我很确定没有它它也会工作得很好(我是指不显示标签的问题)。你们对其他地方的码头位置有限制吗?文档暗示它可能会产生问题:http://doc.qt.io/qt-5/qmainwindow.html#DockOption-enum

对于样式问题,您可能需要在选项卡事件上重新定义它,因为一旦设置了选项卡,小部件可能会继承选项卡样式,而不是您定义的停靠小部件样式(根本没有认证^^)

你可以尝试的最后一件事,就是从dock选项卡开始,而不是浮动,看看你是否有任何新的行为,这是我在以前的项目中所做的,它工作得很好。

很抱歉,目前没有其他想法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36973427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档