QTableView增加QPushButton、QToolButton等控件以及实现点击事件


QTableView增加QPushButton、QToolButton等控件:

 

       QToolButton *EditBtn=new QToolButton();  
        EditBtn->setIcon(QIcon(":/Icon/edit.png"));
        EditBtn->setIconSize(QSize(15,15));
        EditBtn->setStyleSheet("background:transparent;border:0px;");
        EditBtn->setIcon(QIcon(":/Icon/edit.png"));//增加图片显示
        EditBtn->setObjectName(QString::number(UserList.at(i).Id));//关联QToolButton名字,方便点击事件具体到数据行
        ui->mainTable->setIndexWidget(model->index(1 , 4), EditBtn);
       connect(EditBtn , SIGNAL(clicked()) , this , SLOT(EditUser()));

 

点击事件:

 QToolButton *senderObj=qobject_cast<QToolButton*>(sender());
    if(senderObj == nullptr)
    {
        return;
    }
    QString name=senderObj->objectName();//得到名字
    //删除方法需要下面两行代码,因为需要刷新//QModelIndex idx =ui->mainTable->indexAt(QPoint(senderObj->frameGeometry().x(),senderObj->frameGeometry().y()));
    //int row=idx.row();

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM