在行号为row的行前插入一行,如果row等于或大于总行数,则在表格最后一行添加一行。如果这里的行号存在一定问题,行号如果指代tableWidget自己标注的从1开始的行号的话,该描述便存在错误。当我进行表格添加行 *** 作并考虑到末尾行的特殊情况时,根据上述描述出现偏差,导致一次点击最后一行添加了两行。
1 定义一个按钮QPushButton * pBtn = new QPushButton()
2 链接信号与曹
connect(pBtn, SIGNAL(clicked()), this, SLOT(OnBtnClicked()))
3 按钮添加到单元格内
table->setCellWidget(0,0,pBtn)//如果点击按钮出现崩溃现象,就添加QTableWidgetItem 到按钮的那个单元格
4 实现按钮的事件
void myPic::OnBtnClicked(void) { QPushButton * senderObj=qobject_cast<QPushButton *>(sender()) if(senderObj == 0) { return } QModelIndex index =table->indexAt(QPoint(senderObj->frameGeometry().x(),senderObj->frameGeometry().y())) int row=index.row() qDebug()<<"row:"<<row}
大体上如下定义一个添加按钮的回调函数connect(self.pushButton,SIGNAL(clicked()),this,SLOT(addData()))
在毁掉中添加
self.tableWidget->setItem(0,0,new QTableWidgetItem("学号"))
self.tableWidget->setItem(0,1,new QTableWidgetItem(“姓名"))
...
你试一下,不懂可以追问,私聊
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)