如何在顶部栏中实现工具栏,例如Tiled已完成呢?

通常,工具栏如下所示:

示例代码当前的状态:

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr) {
        auto *tbar = new QToolBar();
        tbar->addWidget(new QPushButton("Push Me"));
        this->addToolBar(tbar);
    }
};

最佳答案

如果仍在使用Qt 4.x,则可以使用QMainWindow中包含的setUnifiedTitleAndToolBarOnMac(bool set)函数:

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr) {
        auto *tbar = new QToolBar();
        tbar->addWidget(new QPushButton("Push Me"));
        this->addToolBar(tbar);
        this->setUnifiedTitleAndToolBarOnMac(true); // activate Mac-style toolbar
    }
};

另请参阅:https://qt-project.org/doc/qt-4.8/qmainwindow.html#unifiedTitleAndToolBarOnMac-prop

关于macos - 结合Qt中的工具栏和标题栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16681965/

10-12 16:32