QMainWindow_菜单栏和工具栏创建

1  QMainWindow

1.1菜单栏 只能一个

        1.1.1  用系统提供的方法有这个栏  

               QMenuBar * bar =menuBar();创建菜单栏

        1.1.2 setMenuBar(bar)设置到窗口中

        1.1.3QMenu * fileMenu=bar->addMenu("") 添加菜单

        1.1.4QAction * newAction=fileMenu->addAction("新建");

        1.1.5添加分割线和添加子菜单可以忽略 不是重点代码

//1.菜单栏    只有一个
    QMenuBar * bar =menuBar();
    //菜单栏设置到窗口中
    this->setMenuBar(bar);
    //添加菜单
    QMenu * fileMenu=bar->addMenu("文件");
    QMenu * editMenu=bar->addMenu("编辑");//右边
    //添加菜单项
    QAction * newAction=fileMenu->addAction("新建");
    //添加分割线
    fileMenu->addSeparator();
    QAction * openAction=fileMenu->addAction("打开");

    //菜单项中添加子菜单
    QMenu * subMenu=new QMenu;
    subMenu->addAction("子菜单1");
    subMenu->addAction("子菜单2");
    newAction->setMenu(subMenu);

1.2工具栏  可以多个

1.2.1 QToolBar * toolBar=new QToolBar(this);

1.2.2将工具栏 设置到窗口中 addToolBar(Qt::LeftToolBarArea,toolBar);//默认左边

1.2.3设置后期停靠区域setAllowedAreas

1.2.4设置浮动  setFloatable

1.2.5设置移动  setMovable

1.2.6添加菜单项  addAction

1.2.7添加分割线   addSeparate

//2.工具栏 可以多个
    QToolBar * toolBar=new QToolBar(this);//加this放到对象树上
    //将工具栏 设置到窗口中
    addToolBar(Qt::LeftToolBarArea,toolBar);//默认左边
    //设置只允许左右停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
    //设置浮动
    toolBar->setFloatable(false);
    //设置移动  总管理
    toolBar->setMovable(false);
    //添加菜单项
    toolBar->addAction(newAction);//刚创建的指针
    toolBar->addSeparator();//添加分割线
    toolBar->addAction(openAction);

猜你喜欢

转载自blog.csdn.net/weixin_61847358/article/details/135409287