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();

 

相关文章:

  • 2021-08-24
  • 2021-09-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-17
  • 2021-08-02
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-29
  • 2022-12-23
  • 2022-12-23
  • 2021-10-04
  • 2021-09-13
相关资源
相似解决方案