Qt中如何利用QPushButton来实现一个弹出菜单

本文介绍如何在Qt中利用QPushButton创建一个既美观又实用的弹出菜单。传统的SetMenu方法会在按钮旁显示三角形符号,可能影响整体美感。通过重载QPushButton的clicked()信号,我们可以定制显示菜单的方式,实现更佳的视觉效果。
摘要由CSDN通过智能技术生成

今天,需要做一个弹出菜单的工具栏,于是在网上去找这类的代码,手下找到的是类似于以下的代码:


是通过QPushButton类里面的函数 SetMenu(QMenu* );来实现的


代码如下:

    QFrame *m_allTools;
    QPushButton * m_Tool;
    QPushButton *m_Layer;
    QPushButton *m_Color;

    QVBoxLayout* mainLayout;

//    //为工具栏添加子菜单
//    QFrame *subTools;
//    QPushButton* ZoomInBtn;
//    QPushButton* ZoomOutBtn;
   // QVBoxLayout* subToolsLayout;

    ZoomInBtn = new QPushButton(tr("ZoomIn"),this);
    ZoomOutBtn = new QPushButton(tr("ZoomOut") , this);

    subToolsLayout = new QVBoxLayout;
    subToolsLayout->addWidget(ZoomInBtn);
    subToolsLayout->addWidget(ZoomOutBtn);

    subTools = new QMenu(this);
    subTools->setGeometry(0,100, 100 ,100);
    subTools->setLayout(subToolsLayout);


//    QFrame *m_allTools;
//    QPushButton * m_Tool
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值