我有一个QTableWidget和所有的行我设置一个setCellWidget在一列的按钮。Qt表部件,删除行按钮
我想将此按钮连接到删除此行的函数。 我试过这段代码,它不起作用,因为如果我只是单击我的按钮,我不会将当前行设置为按钮的行。
ui->tableWidget->insertRow(ui->tableWidget->rowCount());
QPushButton *b = new QPushButton("delete",this);
ui->tableWidget->setCellWidget(ui->tableWidget->rowCount()-1,0,b);
connect(d,SIGNAL(clicked(bool)),this,SLOT(deleteThisLine()));
...
void MainWindow::deleteThisLine()
{
int row = ui->tableWidget->currentRow();
ui->tableWidget->removeRow(row);
}
如何以功能知道哪个按钮(在哪个行)被按下的方式将我的按钮连接到函数?
传递行号作为发出信号时的参数,并且在槽中删除接收到的行号。 –
如果您没有对此信号/插槽进行排队,您可能会遇到问题,因为您在删除行**和按钮**的同时仍处理此按钮上的“单击”信号。 – ymoreau
@ user7431005尝试此连接:'connect(d,&QPushButton :: clicked,this,&MainWindow :: deleteThisLine);' – aghilpro