zoukankan      html  css  js  c++  java
  • Qt Application Menu In Window and Mac

    Application Menu

    Application menu in different operator systems has different designed style. like Windows and Mac os, they are different.In the code, we can use different Macro ,eg:Q_OS_MAC and Q_OS_WIN

    #ifdef Q_OS_MAC
    void MainWindow::InitMenu()
    {
        QMenuBar* mBar = menuBar();
    
        QMenu* mApp   = new QMenu(tr("App"),this);
        QMenu* mFile  = new QMenu(tr("&File"),this);
    
        mBar->addMenu(mApp);
        mBar->addMenu(mFile);
    
        /** In Mac,We should to set action role */
        QAction* actAbout = new QAction(tr("&About"),this);
        actAbout->setMenuRole(QAction::AboutRole);
    
        QAction* actSetApp = new QAction(tr("&Preference..."),this);
        actSetApp->setMenuRole(QAction::PreferencesRole);
    
        mApp->addAction(actAbout);
        mApp->addAction(actSetApp);
    
        QAction* actOpen = new QAction(tr("&Open Video Files..."),this);
        mFile->addAction(actOpen);
    
        connect(actOpen,&QAction::triggered,_player,&Player::StOpen);
        connect(actSetApp,&QAction::triggered,this,&MainWindow::StShowSetDlg);
    }
    #else
    void MainWindow::InitMenu()
    {
        QMenuBar* mBar = menuBar();
    
        QMenu* mFile  = new QMenu(tr("&File"),this);
        QMenu* mSet   = new QMenu(tr("&Setting"),this);
        QMenu* mAbout = new QMenu(tr("&About"),this);
    
        QAction* actOpen = new QAction(tr("&Open Video Files..."),this);
        QAction* actExit = new QAction(tr("&Exit out"),this);
    
        mFile->addAction(actOpen);
        mFile->addSeparator();
        mFile->addAction(actExit);
    
        QAction* actSetApp = new QAction(tr("&Setting App..."),this);
        mSet->addAction(actSetApp);
    
        mBar->addMenu(mFile);
        mBar->addMenu(mSet);
        mBar->addMenu(mAbout);
    
        connect(actOpen,&QAction::triggered,_player,&Player::StOpen);
        connect(actExit,&QAction::triggered,this,[=](){close();});
        connect(actSetApp,&QAction::triggered,this,&MainWindow::StShowSetDlg);
    }
    #endif
    

  • 相关阅读:
    H3BPM子表的复制
    vue规格新增一对多的例子
    vue自制switch滑块
    table垂直居中
    css清楚浮动的class
    网页之间的参数传递
    调用get_str_time(时间), 就能把毫秒的时间转换成格式化的 ,转化时间戳的方法
    css实现照片上传的加号框
    递归函数获得n个不重复的随机数
    随机生成n个不重复的数,范围是2-32,并让其在新页面打开
  • 原文地址:https://www.cnblogs.com/zi-xing/p/8594799.html
Copyright © 2011-2022 走看看