zoukankan      html  css  js  c++  java
  • QMenu,QT的菜单添加

    添加菜单方法1

             m_pMenuBar= new QMenuBar(this);

             QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);

             QMenu*pOpenMenu = new QMenu("打开", pFileMenu);

             QMenu*pCreateMenu = new QMenu("创建", pFileMenu);

             QAction*pOpenAction = pFileMenu->addMenu(pOpenMenu);

             QAction*pCreateAction = pFileMenu->addMenu(pCreateMenu);

    connect(pOpenAction, SIGNAL(triggered()),this, SLOT(openFile()));


    通过addMenu()添加起来的菜单是含有打开的箭头,并且不connect到信号和槽

    添加菜单方法2

             m_pMenuBar= new QMenuBar(this);

             QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);

             QAction*pOpenAction = pFileMenu->addAction("打开");

             QAction*pCreateAction = pFileMenu->addAction("创建");

     

    通过addAction只添加QAction*,不再会含有子菜单的展开箭头,并且可以connect消息和槽

    。。。。

    总结:猜测,菜单要有响应添加的是QAction*,并不是QMemu,当需要有子菜单的时候才会用addMenu ()函数。

  • 相关阅读:
    线程包含CPU现场
    K8S资源操作
    Kubernetes资源管理
    kubernetes部署安装
    kubernetes简介
    Docker总结
    3.11 虚拟局域网
    3.10 以太网交换机生成树协议STP
    3.9 以太网交换机自学习和转发帧的流程
    3.8 集线器与交换机的区别
  • 原文地址:https://www.cnblogs.com/yuzhould/p/4454953.html
Copyright © 2011-2022 走看看