How to show the row where QPushButton is clicked in QTableWidget

后端 未结 2 382
别那么骄傲
别那么骄傲 2021-01-19 14:56

I would like to delete row where QPushButton is clicked how it is possible to I think it is reasonable to use slots but how to do it don\'t know , if you have a

2条回答
  •  青春惊慌失措
    2021-01-19 15:24

    When you are creating QPushButton just add :

        btn_delete = new QPushButton("Remove", ui->tableWidget);
        btn_delete->setObjectName(QString("%1").arg(ui->tableWidget->rowCount()));
    
        connect(btn_delete, SIGNAL(clicked()), this,    SLOT(CellButtonDeleteClicked()));
    

    And create function CellButtonDeleteClicked()

         void CellButtonDeleteClicked()
         {
    
          //   by this line I can get the sender of signal
          QPushButton *pb = qobject_cast(QObject::sender());
    
          int row = pb->objectName().toInt();
          ui->tableWidget->removeRow(row);
         }
    

提交回复
热议问题