【问题标题】:Multiple widgets on a QDockWidgetQDockWidget 上的多个小部件
【发布时间】:2014-12-04 06:54:43
【问题描述】:

我正在制作一个小应用程序,用于使用 Qt 和 C++ 在图像上应用各种滤镜。

我的问题是,是否可以在 QDockWidget 上添加多个 widgets ? 因为我想添加按钮以重新应用扩展坞上的最后 5 个过滤器。

这是我想要实现的一个示例。

【问题讨论】:

    标签: c++ layout widget qwidget qdockwidget


    【解决方案1】:

    可以将多个QWidgets 添加到任何QWidget。 看起来你可能想做这样的事情:

    QDockWidget dock(QLatin1String("Last filters"));
    QWidget* multiWidget = new QWidget();
    QVBoxLayout* layout = new QVBoxLayout();
    QPushButton* filter1 = new QPushButton(QLatin1String("Filter number 1"));
    QPushButton* filter2 = new QPushButton(QLatin1String("Filter number 2"));
    QPushButton* filter3 = new QPushButton(QLatin1String("Filter number 3"));
    QPushButton* filter4 = new QPushButton(QLatin1String("Filter number 4"));
    QPushButton* filter5 = new QPushButton(QLatin1String("Filter number 5"));
    QLabel* label = new QLabel(QLatin1String("QPushButtons"));
    
    layout->addWidget(filter1);
    layout->addWidget(filter2);
    layout->addWidget(filter3);
    layout->addWidget(filter4);
    layout->addWidget(filter5);
    layout->addWidget(label);
    multiWidget->setLayout(layout);
    dock.setWidget(multiWidget);
    

    【讨论】:

    • 能否提供此示例的完整代码,以便从头开始构建示例?
    • @AvnerMoshkovitz 对不起,没有。这违背了stackoverflow.com 的意图和目的。只是问一个问题并将我链接到它。让我为你做点什么是完全不同的。这不是教程网站或原型库。那就是说我愿意帮忙。所以我建议从这里开始:doc.qt.io/qt-5/qtexamplesandtutorials.html 如果在尝试之后你仍然在努力完成一些特定的事情,我会说你已经准备好问一个问题了!
    • 了解布局是否可以直接添加到停靠小部件会很有趣。在这种情况下,不需要multiWidget,只需要layout。与其他 Widget 派生类相反,这似乎是不可能的。
    猜你喜欢
    • 2020-09-29
    • 1970-01-01
    • 2013-11-05
    • 2012-02-27
    • 2012-12-22
    • 1970-01-01
    • 1970-01-01
    • 2014-05-11
    • 1970-01-01
    相关资源
    最近更新 更多