QT学习_Menu菜单

这段代码展示了如何在Qt环境中创建和使用QMenu来响应用户操作。通过为菜单项添加信号槽,实现了图形界面中点击菜单触发不同功能,如缩放、选择和清除操作。此外,还展示了如何在按钮上添加菜单,并隐藏下拉指示图标。
摘要由CSDN通过智能技术生成

Menu菜单

void Widget::MenuRequested(QPoint p)
{
    QMenu *menu = new QMenu(this);
    menu->setAttribute(Qt::WA_DeleteOnClose);
    menu->addAction("resize",this,[=](){
        ui->cw->rescaleAxes();
        ui->cw->replot();
    });
    menu->addAction("zoom",this,[=](){
        ui->cw->setSelectionRectMode(QCP::SelectionRectMode::srmZoom);
    });
    menu->addAction("select",this,[=](){
        ui->cw->setSelectionRectMode(QCP::SelectionRectMode::srmSelect);
    });
    menu->addAction("None",this,[=](){
        ui->cw->setSelectionRectMode(QCP::SelectionRectMode::srmNone);
    });
    menu->popup(ui->cw->mapToGlobal(p));//必须要,否则不显示菜单
}

button中添加menu

//按键显示菜单进行操作
QMenu* menu = new QMenu;
menu->addAction(tr("Rename"),gw,&RobotGroupWidget::on_pushButton_modifyGroup_clicked);
menu->addAction(tr("Delete"),gw,&RobotGroupWidget::on_pushButton_removeOrAnd_clicked);

QPushButton* button_modify = new QPushButton(w);
button_modify->setObjectName("pushButton_setting");
button_modify->setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
button_modify->setMenu(menu);
button_modify->setStyleSheet("QPushButton::menu-indicator{image:none;}");//不显示下拉图片
layout->addWidget(button_modify);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>